![]() |
Zeitmesser
Hallo,
ich möchte gern ein Label auf einem Formular haben, dass zählt, wie lange das Form schon offen ist, also, dass unten die Zeit läuft. Hat da ejemand einen Quellcode für? Danke schon mal im Voraus nixalsverdruss |
Re: Zeitmesser
ja
|
Re: Zeitmesser
:thumb:
top ;) du kannst einfach einen Timer machen und dann in die Timer-Prozedur z.B. schreiben
Delphi-Quellcode:
solltest aber dann Label1.Caption beim Form.Create oder noch davor auf 0 setzen und das Timer-Interval auf 1000 lassen
Label1.caption:=inttostr(strtoint(Label1.caption)+1);
|
Re: Zeitmesser
okay dankeschön, probier ich gleichmal....
|
Re: Zeitmesser
Super!!!!!!!!!!!!!!!!!!!!! Genauso wollt ichs haben! Dankeschön! :hello:
|
Re: Zeitmesser
um es etwas genauer zu haben, verwende am besten GetTickCount (liefert die ms ab, die der PC schon läuft.)
|
Re: Zeitmesser
Hi!
Ich wäre mir aber nicht so sicher, ob das so genau funktioniert. Ich denke nämlich nicht unbedingt, dass der Timer genau im Takt 1000ms aufgerufen wird - bspw. nicht, wenn der Rechner mal gerade voll ausgelastet wird o.ä. Ich würde zwar auch einen Timer mit Takt 1000ms nutzen, allerdings dann nicht einen Counter erhöhen, sondern die aktuelle Zeit auslesen und dann die Zeit beim Öffnen irgendwo gespeichert haben und dann die Differenz ordentlich formatiert ausgeben. Ciao, Frederic |
Re: Zeitmesser
Zitat:
|
Re: Zeitmesser
Zitat:
Delphi-Quellcode:
type
TMyForm = class(TForm) MyTimer: TTimer; MyLabel: TLabel; ... procedure FormCreate(Sender: TObject); private FStart: TDateTime; ... end; ... uses DateUtils; ... procedure TMyForm.FormCreate(Sender: TObject); begin FStart := now; //Startzeit merken end; procedure TMyForm.MyTimerTimer(Sender: TObject); const SecsPerMinute = 60; SecsPerHour = SecsPerMinute * 60; var dwSecDiff: Cardinal; begin dwSecDiff := DateUtils.SecondsBetween(now,FStart); //Zeitdifferenz in Sekunden MyLabel.Caption := Format('%.2d Stunden, %.2d Minuten, %.2d Sekunden', [dwSecDiff div SecsPerHour, dwSecDiff mod SecsPerHour div SecsPerMinute, dwSecDiff mod SecsPerMinute]); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz