Zitat von
Daniel B:
Also bei mir läuft die TrackBar gleichmässig durch, braucht ca. 4 Sek. dazu.
also auch nicht ganz korrekt, es sollten ja eigentlich 3 Sek sein.
Zitat von
Daniel B:
Warum es bei manchen nicht gleichmässig läuft, ist mMn das die ProcessMessages gar nicht richtig läuft, feststellen kann man dies, indem man während die TrackBar läuft, es nicht möglich ist das Programm zu beeenden, man kann die Bar dadurch leicht bremsen, die Ereignisreihenfolge/Abarbeitung ist da nicht ganz "zuverlässig".
Und was kann man dagegen tun? Gibt es vll ne Alternative zu Application.ProcessMessages? Hier nochmal der Quellcode des Upgeloadeten Progs:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Start, Y: Integer;
begin
Start := GetTickCount;
Y := 200;
repeat
Image1.Canvas.Ellipse(0, Y, 50, Y+50);
Y := Y - 1;
TrackBar1.Position := GetTickCount-Start;
Application.ProcessMessages;
until TrackBar1.Position = TrackBar1.Max;
end;