Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Timer anzeige (https://www.delphipraxis.net/61118-timer-anzeige.html)

Pump3r 17. Jan 2006 10:05


Timer anzeige
 
Moin,
Mal ne Frage:

Ich hab nen Timer, der jede Sekunde 1 addiert.
so wenn ich die zahl jetzt noch jede Sekunde anzeigen lass, sieht das ja dann so aus: 1,2,3,4,5,...789,4567378358 usw :>

ich würd das jetzt gerne wie bei ner stopuhr anzeigen lassen.

00:00:00

hinten die sekunden, dann die minuten und die stunden.

gibt es von delphi eine funktion, oder muss ich mir selbst was überlegen?


Danke im Voraus für jede Antwort!!


Gruß Chris :angel:

alzaimar 17. Jan 2006 10:11

Re: Timer anzeige
 
Die einfachste Möglichkeit ist die hier:
Es gibt in Delphi den Datentyp 'TDateTime'. Der ganzzahlige Anteil ist die Anzahl der Tage seit dem 1.1.1900. Der Nachkommaanteil beschreibt die Tageszeit: 0.5 ist Mittags, 0.25 morgens um 6. Soweit so gut.

Dann gibts noch eine Funktion, die die Uhrzeit in dem von dir gewünschten Format anzeigt: TimeToStr.
So, und dann hat der Tag 86400 (60*60*24) Sekunden. Also kannst Du deine Sekunden ganz einfach so anzeigen lassen:
Delphi-Quellcode:
Function SecondsToStr (aSeconds : Integer) : String;
Var
  iDays : Integer;

Begin
  iDays := aSeconds div 86400;
  Result := TimeToStr (aSeconds/86400);
  If iDays>0 Then
    Result := Format ('%d Tag(e), %s',[iDays, Result]);
End;
Die Funktion zeigt Dir, wenns denn sehr lange dauert, auch noch die Tage an, also z.B.: "2 Tag(e) 05:03:02"

Pump3r 17. Jan 2006 10:17

Re: Timer anzeige
 
danke dir! :>

dachte nicht das das so einfach ist

Amateurprofi 17. Jan 2006 10:30

Re: Timer anzeige
 
Delphi-Quellcode:
procedure TMain.Timer1Timer(Sender: TObject);
begin
   inc(seconds);
   edit1.Text:=FormatDateTime('hh:nn:ss',seconds/86400);
end;

Pump3r 17. Jan 2006 10:48

Re: Timer anzeige
 
hmm,eigentlich wollte ich das nicht mit der uhrzeit.

sondern wenn ichmein programm starte soll ein timer bei 0 anfangen und die sekunden dann in dem format: 00:00:00 in meinem edit anzeigen.

wenns 60 sekunden läuft halt einfach 00:01:00
wenns 1 std 59 minuten und 3 sekunden läuft: 01:59:03
...

Pump3r 17. Jan 2006 11:01

Re: Timer anzeige
 
man bin ich blöd!

ab die variable net als global deklariert :p

geht danke :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz