Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#15

Re: Verbleibende Zeit anzeigen

  Alt 10. Jun 2005, 22:53
mit GetTickCount bekommt man die Zeit in Millisekunden seit windowsstart.
Bevor du den Timer startest holst du dir also die Zeit und addierst deine spanne dazu.
Delphi-Quellcode:
EndTime := GetTickCount + 6000;
Timer1.Interval := 500;
Timer1.Enabled := True;
und im OnTimer ereignis
Delphi-Quellcode:
var LTime: Cardinal;
begin
  LTime := GetTickCount;
  if LTime < EndTime then
    caption := 'verbleibend: ' + inttostr(EndTime - LTime) + ' sekunden'
  else begin
    Timer1.Enabled := False;
    caption := 'fertig';
  end;
und ein Timer ist keine Schleife in einem Thread. Das Timer-Event wird von Windows ausgelöst und es wird an die Anwendung eine Message geschickt. Alternativ kann man auch wenn man die Api-Funktion dafür nutzt direkt eine Funktionsadresse angeben so das keine Message geschickt wird...
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat