Thema: Timer-Frage

Einzelnen Beitrag anzeigen

Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Timer-Frage

  Alt 26. Apr 2011, 17:45
Dies ist wahrscheinlich eine recht dumme Art und Weise um das Problem zu klären, aber eine Bessere fällt mir nicht ein.
Das ist tatsächlich keine allzu gute Option Angst vor Systemabstürzen musst du keine haben, aber die Lösung ist schon sehr "dirty".
Threads wären genau das richtige, allerdings benötigt man dafür schon etwas Hintergrundwissen. Eine andere Möglichkeit, damit das Programm zumindest nicht vollständig einfriert, ist folgendes: Probier mal Application.ProcessMessages aus:

Delphi-Quellcode:
for i := 0 to 100 do
begin
  Sleep(1000);
  Application.ProcessMessages;
end;
Dies veranlasst, dass alle anstehenden Messages verarbeitet werden, bevor die Schleife fortgeführt wird. So ließe sich sogar eine "Abbrechen"-Funktionalität basteln.

Übrigens: ein Timer hat nur eine Auflösung von einigen MS im zweistelligen Bereich, d.h. wenn du das Intervall auf 1 ms stellst, dann wird das Timer-Event gar nicht jede MS getriggert sondern nur alle 15 oder 20
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat