Hallo,
ich bin noch ein Delphi Frischling
. Ich will eine einfache Animation aus Bildern mittels Timern verwirklichen. Mittels einer Eingabe vom Nutzer soll die Anzahl der Animationsdurchläufe bestimmt werden.
Dazu habe ich folgenden Quelltext geschrieben:
Delphi-Quellcode:
var
Form1: TForm1;
ende,Ziel,i,a: integer;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Image1.Visible:=false;
Image2.Visible:=false;
Image3.Visible:=false;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
Timer1.Enabled:=true;
Timer1.Interval:=100;
Ziel:=strtoint(Edit1.Text);
for a:=0 to Ziel do begin
Ende:=Ende+1;
if Ende=Ziel then begin
Timer1.Enabled:=false;
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
i: Integer;
begin
erg:=0;
i:=0;
inc(i);
case i of
1: begin
Image1.Visible := True;
Image2.Visible := False;
Image3.Visible := False;
end;
2: begin
Image1.Visible := False;
Image2.Visible := True;
Image3.Visible := False;
end;
3: begin
Image1.Visible := False;
Image2.Visible := False;
Image3.Visible := True;
i:=0;
end;
end;
end;
initialization
i := 0;
end.
Mein Problem ist das die Animation nicht wirklich anspringt: Das erste Bild wird sichtbar,und bleibt auch dauerhaft sichtbar ohne das die anderen Bildern anspringen. Irgendwas muss also falsch sein... .