Thema: Delphi Alternative zu SLEEP

Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: Alternative zu SLEEP

  Alt 7. Apr 2006, 14:08
Zitat von Sharky:
schaut ich doch man Hagens Beitrag in der CodeLibrary zu dem Thema an.
Dann kommt hier "Delay revisited #2":
Man sollte den Delay unterbrechen, wenn die Anwendung beendet wurde.
Delphi-Quellcode:
procedure Delay(Milliseconds: Integer);
var
  Tick: DWord;
  Event: THandle;
begin
  Event := CreateEvent(nil, False, False, nil);
  try
    Tick := GetTickCount + DWord(Milliseconds);
    while (Milliseconds > 0) and
          (MsgWaitForMultipleObjects(1, Event, False, Milliseconds, QS_ALLINPUT) <> WAIT_TIMEOUT) do
    begin
      Application.ProcessMessages;
      if Application.Terminated then Exit; // <===== NEU
      Milliseconds := Tick - GetTickcount;
    end;
  finally
    CloseHandle(Event);
  end;
end;
Andreas
  Mit Zitat antworten Zitat