![]() |
Re: Zeitdifferenz "ordentlich" formatiert darstell
Zitat:
|
Re: Zeitdifferenz "ordentlich" formatiert darstell
Angenommen, Du hast ein privates Feld "FTimeUntil" vom Typ TTime definiert. Dann ginge doch so etwas (Zuweisung mittels 2 Edits ohne Fehlerprüfung):
Delphi-Quellcode:
Und im Timer-Event dann so:
procedure TForm1.btn1Click(Sender: TObject);
begin FTimeUntil := Date + StrToTime(Format('%s:%s',[edtHour.Text,edtMinute.Text])); cdTimer.Enabled := True; end;
Delphi-Quellcode:
procedure TForm1.cdTimerTimer(Sender: TObject);
var RemainingSeconds: Cardinal; begin RemainingSeconds := SecondsBetween(Now,FTimeUntil); lblRemaining.Caption := Format('Noch %.2d:%.2d:%.2d bis %s', [RemainingSeconds div 3600, RemainingSeconds div 60 mod 60, RemainingSeconds mod 60, FormatDateTime('hh:mm',FTimeUntil)]); end; |
Re: Zeitdifferenz "ordentlich" formatiert darstell
ich weis nicht... das kenn ich noch gar nicht (das Feld "FTimeUntil" & Edits ohne Fehlerprüfung)
muss zuerst noch versuchen das zu verstehen und so :P (bin wirklich neuling was programmieren angeht :?) |
Re: Zeitdifferenz "ordentlich" formatiert darstell
Das ist eigentlich ganz einfach: da globale Variablen im Allgemeinen "pfui" sind, deklariert man sich ein privates Feld.
Delphi-Quellcode:
Und mit der fehlenden Fehlerprüfung meinte ich nur, dass ich in meinem Beispiel nicht nachschau, ob in den Edits Blödsinn drinsteht (keine Zahlen oder eine Stunde > 23 z.B.).
type TMyForm = class(TForm)
... private FTimeUntil: TTime; ... end; |
Re: Zeitdifferenz "ordentlich" formatiert darstell
Zitat:
wozu sind diese inputboxen dann gut wenn man akkes reinschreiben darf? :nerd: für den rest... so langsam wird das ganze chinesisch für mich^^ kannst du mier ein beisèiel programmieren das funktionstüchtig ist, dann kann ich dass leichter verstehen (Nein, will nicht von anderen profitieren, will es selbst auch können :tongue: ) |
Re: Zeitdifferenz "ordentlich" formatiert darstell
Wieso, das Beispiel aus #32 ist funktionstüchtig, Du müsstest nur eine Fehlerbehandlung einbauen. Beispielsweise könntest Du mit TryStrToInt schauen, ob die Eingabe in eine Zahl gewandelt werden kann. Wenn nicht, hat der Anwender anscheinend nicht genug Grips oder ist böser Absicht oder einfach nur Softwaretester :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:17 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