Wenn du das nicht so ruckartig haben willst, sondern noch gefedert, dann kannst du das machen:
Delphi-Quellcode:
const
AnzahlSchritte = 12;
procedure TForm1.FormCreate(Sender: TObject);
begin
Timer1.Interval := 40;
Timer1.Enabled := False;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Tag := AnzahlSchritte;
Timer1.Enabled := True;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if Timer1.Tag > 0 then
begin
Timer1.Tag := Timer1.Tag - 1;
Button1.Left := Button1.Left + Sqr(Timer1.Tag);
end
else
Timer1.Enabled := False;
end;
Der Button startet schnell und wird zum Ende langsamer. Netter Effekt.