Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.09;
Скачать: CL | DM;

Вниз

Как сделать анимацию?   Найти похожие ветки 

 
Кирилл Таран   (2006-06-22 12:17) [0]

Как можно сделать анимацию в Дельфи 7.0?
Пробовал сделать, как в Борланд Паскале, используя оператор паузы (Delay), но не нашёл такой оператор :), с таймером и пустыми циклами не получилось.
Кто-нибудь подскажет ,как сделать анимацию, или этот оператор?


 
Чародей ©   (2006-06-22 20:31) [1]

Через таймер


 
grouzd)ev ©   (2006-06-22 22:55) [2]

Sleep

---
... we are walking on a thin line and you better avoid the risk ...


 
Sava18   (2006-06-24 19:23) [3]

попробуй покапаться в этом коде.Я его давненько писал и так до ума не довел.Програмка сыроватая но зато работает.Для ее работы на форму надо добавить таймер и имажелист.Ну там сам разбережся.За одно тут представлено как двигать  фигуру с помощью стрелок.

unit Unit1;

interface

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

type
 TForm1 = class(TForm)
   ImageList1: TImageList;
   Timer1: TTimer;
   procedure Timer1Timer(Sender: TObject);
   procedure FormActivate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
dx,y,x,n,r:integer;
implementation

{$R *.dfm}

 procedure TForm1.FormActivate(Sender: TObject);
begin
N:=-1;
x:=50;
y:=50 ;
dx:=10;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
a,y1,x1:integer;
begin

x1:=x;
y1:=y;
if hiword(getkeystate(vk_right))=0 then a:=0;
if hiword(getkeystate(vk_right))<>0 then a:=1;
if hiword(getkeystate(vk_left))<>0 then a:=2;
case a  of
1: x1:=x1+dx;
2: x1:=x1-dx;
end;
case a of
0:r:=3;
1:r:=r+1;
2:r:=r-1;
end;
begin
N:=r;

Repaint;
if r=6 then r:=0;
if r<0 then r:=6;//временно
WITH form1.ImageList1 DO
BEGIN
case r of
0: Draw(Canvas,x1,y1,1);
1: Draw(Canvas,x1,y1,2);
2: Draw(Canvas,x1,y1,3);
3: Draw(Canvas,x1,y1,4);
4: Draw(Canvas,x1,y1,5);
5: Draw(Canvas,x1,y1,0);

end;
x:=x1;
end;
end;

end;

end.



Страницы: 1 вся ветка

Текущий архив: 2006.07.09;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
6-1141213330
just_roma
2006-03-01 14:42
2006.07.09
Передача голосовых сообщений по сети


2-1150874343
logslava
2006-06-21 11:19
2006.07.09
Напомните, пожалста


2-1150509587
fantasy
2006-06-17 05:59
2006.07.09
SQL


15-1150125324
antonn
2006-06-12 19:15
2006.07.09
Помогите на англицкий перевести...


1-1148632554
tytus
2006-05-26 12:35
2006.07.09
Русский язык