Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2011, 20:03   #1
om3n
Пользователь
 
Регистрация: 14.04.2010
Сообщений: 17
По умолчанию Ошибка в анимации

В общем есть нарисованный человечек, он двигается, т.е. шагает. И на третьем шаге у него теряется нога) Сколько не редактировал, не понял, почему она пропадает. Может вы подскажете.
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    procedure Timer1Timer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  i,x:integer;
implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
i:=i+1;
x:=x+30;
If i>3 then i:=1;
Form1.Refresh;
If i=1 then
with canvas do
begin
Ellipse(x+10, 100, x+40, 130);
MoveTo(x+25, 130);
LineTo(x+25, 150);
MoveTo(x+25, 130);
LineTo(x+25, 140);
MoveTo(x+25, 130);
LineTo(x+40, 140);
MoveTo(x+25, 150);
LineTo(x+15, 190);
MoveTo(x+25, 150);
LineTo(x+35, 190);
end;
 
If i=2 then
with canvas do
begin
Canvas.Ellipse(x+10, 100, x+40, 130);
MoveTo(x+25, 130);
LineTo(x+25, 150);
MoveTo(x+25, 130);
LineTo(x+25, 140);
MoveTo(x+25, 130);
LineTo(x+40, 140);
MoveTo(x+25, 150);
LineTo(x+25, 190);
MoveTo(x+25, 150);
LineTo(x+35, 190);
end;
 

with canvas do
begin
Ellipse(x+10, 100, x+40, 130);
MoveTo(x+25, 130);
LineTo(x+25, 150);
MoveTo(x+25, 130);
LineTo(x+10, 140);
MoveTo(x+25, 130);
LineTo(x+40, 140);
MoveTo(x+25, 150);
LineTo(x+35, 190);
MoveTo(x+25, 150);
LineTo(x+35, 190);
end;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
timer1.enabled := not timer1.enabled;
end;
end.
om3n вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Колесо почему-то не крутится....ошибка в анимации. vedro-compota Мультимедиа в Delphi 8 08.06.2010 21:02
создание анимации Sergeu Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 01.01.2010 01:52
Анимации Shadow_1329 Gamedev - cоздание игр: Unity, OpenGL, DirectX 15 05.06.2009 21:47
Анимации Sanek777 Общие вопросы Delphi 0 02.11.2008 17:19
Gif анимации Witaliy Мультимедиа в Delphi 9 28.04.2008 10:47