Liebes Forum,
ich möchte mit Hilfe von Canvas.Copy eine Gruppe von Bitmaps bewegen.
Um genau zu sein habe ich 2 "Armeen", die sich auf einander zubewegen.
Die linke Armee bewegt sich wie geplant nach rechts:
Code:
procedure TForm1.TimerArmeeRTimer(Sender: TObject);
var x :integer;
Ziel,Quelle :TRect;
begin
x := 1;
repeat
x := x+1;
Sleep(60);
Quelle := Rect(105 + x,240,184 + x,416);
Ziel := Rect(105 + (x+1),240,184 + (x+1),416);
canvas.CopyRect(Ziel, canvas, Quelle);
until
x >= 164;
end;
Bei der zweiten Armee aber, die sich von rechts nach links zu bewegen hat, bewegt sich die Quelle bei folgender Prozedur nur ganz kurz und hört dann auf. Die Bitmaps verschwinden dann leider an dessen Grenze :
Code:
procedure TForm1.TimerAmeeGTimer(Sender: TObject);
var x :integer;
Ziel,Quelle :TRect;
begin
x := -1;
repeat
x := x-1;
Sleep(40);
Quelle := Rect(400 + (x),248,512 + (x),392);
Ziel := Rect(400 + (x-1),248,512 + (x-1),392);
canvas.CopyRect(Ziel, canvas, Quelle);
until
x <= 200;
end;
Ich habe leider wirklich keine Ahnung, was ich da falsch mache
Ich freue mich auf eure Hilfe,
Vielen Dank und Gruß,
thechus