![]() |
Restzeit von einen Countdown
Moin,
Ich hoffe der Titel sagt das richtige aus Es geht um ein Countdown aber ohne tage nur zeit Also es gibt 3 Edits ( Edit1 = Std , Edit2 = Min , Edit3 = Sec ) der benutzer gibt jetzt eine Zeit an z.b 3 Std 52 Min 30 Sec und diese zeit soll abgezählt werden d.h jede Sek zieht Timer1 1 Sek ab // wird wohl jedem klar sein und sobald Edit1 0 Edit2 0 Edi3 0 anzeigen gibt er Showmessage 'Zeit ist Abgelaufen' ich habe auch schon viel in DP gesucht aber irgendwie wollen alle mit tage machen oder ich schnall das ned es kann eigentlich ned so schwer sein oder??? Hab auch schon versucht alles in sekunden umzuwandeln und dann timer1 gesagt er soll jede Sek 1 Sek abziehen nur da klappt es irgendwie ned das er mir alles wieder in Std Min und Sek wieder gibt Hoffe ihr versteht meine Frage *daumdrück* MFG Sven |
Re: Restzeit von einen Countdown
Hallo!
Delphi-Quellcode:
Müsste so ähnlich gehen.
procedure TForm1.Timer1Timer(Sender: TObject);
begin Sekunden := Sekunden - 1; if Sekunden < 0 then begin Sekunden := 59; Minuten := Minuten - 1; end; if Minuten < 0 then begin Minuten := 59; Stunden := Stunden - 1; end; if Stunden < 0 then begin //ende end; end; Grüße Faux |
Re: Restzeit von einen Countdown
Da die Timer ja bekanntlich nicht die genausten sind, verrechne lieber deine Dauer mit der aktuellsten Uhrzeit - also berechne den Zeitpunkt, wo der Timer ablaufen würde - und dann gib in dem Timer selber immer nur die Restzeit an, damit bekommst du keine Fehler rein.
Beim Start des Timers Endzeit = aktuelleZeit + Dauer und bei der Anzeige dann nur noch Restzeit = Endzeit - aktuelleZeit |
Re: Restzeit von einen Countdown
Zitat:
|
Re: Restzeit von einen Countdown
Klar ist die Fehlerrate relativ klein, aber wenn über Stunden hinweg alle 'ner Sekunde ein Fehler eingebaut wird, dann summiert sich dieses aber.
|
Re: Restzeit von einen Countdown
Moin,
@faux ja dein code geht nur das einzige Problem ist das er so zählt 0 -1 58 aber das sollte eigentlich kein drama sein @himitsu Gut das du mir das sagst aber in meine Fall muss der Timer ned 100 % genau sein da das für ein spiel ist und ein einfach nur dran erinnern soll wann eine Aktion beendet ist und nachdem er die meldung gelesen hat und das Spiel im Browser aufgerufen hat sollte die Aktion trozdem schon beendet sein. MFG Sven |
Re: Restzeit von einen Countdown
Zitat:
Einfach nicht auf 59, sondern 60 setzen... ;) Grüße Faux |
Re: Restzeit von einen Countdown
Zitat:
MFG sven |
Re: Restzeit von einen Countdown
Moin,
Wenn jmd den Fehler weiss warum er jetzt 0 -1 59 zählt bitte posten interessieren würde mich das doch schon mal ich hab auch schon mit ' = 0 , <= 0 , < 1 'aber da macht er es auch ned :coder2: naja ich geh erstmal ins Bett vllt komm ich ja morgen drauf d.h wenn es niemand von euch weiss^^ MFG Sven |
Re: Restzeit von einen Countdown
das von faux scheint mir erstmal richtig.
Zeig mal, wie du es genau bei dir implementiert hast. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 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