Entwickler-Ecke

Sonstiges (Delphi) - Zeitzähler - ähnlich wie eine Stoppuhr


donarac - Di 09.08.05 19:43
Titel: Zeitzähler - ähnlich wie eine Stoppuhr
Hallo in die Runde,

ich habe ein kleines Programm geschrieben, bei dem der Anwender ein Rätsel lösen soll. Nun möchte ich gerne eine "Uhr" mitlaufen lassen - im Format:
00:00:00:000
also inklusive Millisekunden.

Der Einfachheit dachte ich, dass ich die verstreichende Zeit in einem Label anzeigen lasse.

Ich kenne bereits die Anzeige der aktuellen Systemzeit in einem Panel - aber die auch nur mit Sekundenanzeige und nicht im Millisekundenformat und nicht ab Zeit: 0 - die Anzeige im Label lässt sich einfach nicht aktivieren; bleibt immer 00:00:00:000. :cry:

Hat jemand 'ne Lösung für mich?


Kroni - Di 09.08.05 19:47

Nun ja, du könntest dir die Zeit in MS geben lassen und dann selber umrechnen?!?
Wie sieht denn dein bisheriger CODE aus?


CK_CK - Di 09.08.05 20:03

Ich verwende in solchen Fällen immer
GetTickCount(); 8)

CK_CK


LigH - Di 09.08.05 20:07

Mein Tipp hierfür:

- ein Label, oder ein StaticText
- ein inaktiver Timer mit kleinem Intervall, muss aber nicht unbedingt 1 (ms) sein
- im Timer-Ereignis: Differenz zwischen "Now" und einer TDateTime-Variablen formatiert in das Label oder den Statictext ausgeben
- als Start-Ereignis: die TDateTime-Variable auf "Now" setzen, Timer aktivieren
- als End-Ereignis: Timer deaktivieren


matze - Mi 10.08.05 09:25

nimm gettickcount. da sparste dir den timer, der bei kleinenen werten schon extrem ungenau wird. und es ist in 2-3 zeilen code erledigt !