![]() |
TDateTime - Einstellen der Minuten in 5er Schritten?
Hallo,
Ich möchte mittels eines TDateTimePicker dei Eingabe einer Uhrzeit ermöglichen. Im Grunde kein Problem, kind ist auf dtkTime gestellt und das Format auf HH:dd. Jetzt kann man in der Box die Zeit ganz normal einstellen. Allerdings sollen die Minuten in 5er-Schritten gezählt werden. Kann man den Picker so einstellen, dass er automatisch in 5-Minutenschritten weiterzählt, wenn man auf den Up oder Down Button klickt (also 13:40 ... 13:45 ... 13:50 etc.)? Wäre schöner als wenn ich die Eingabe erst abwarten müsste um dann aus eingegebenen 13:31 eine 13:30 zu machen... Mir war so, als ob ich so etwas schon einmal gesehen hätte... Danke, Autokrat |
Re: TDateTime - Einstellen der Minuten in 5er Schritten?
wo hast du denn die zeiten reingepackt? listox, usw?
|
Re: TDateTime - Einstellen der Minuten in 5er Schritten?
Zitat:
Da die Komponente wohl leider keine Eigenschaft wie Step besitzt, würde mir jetzt nur einfallen im OnChange das von Hand zu machen. |
Re: TDateTime - Einstellen der Minuten in 5er Schritten?
ich würde es auch von hand machen, immer diese fünferschritte. und dann eben der listbox zum beispiel adden!
|
Danke!
Nachdem ich auch noch einmal nach anderen Komponenten geguckt habe, habei ich das per Hand gelöst, indem ich bei OnExit auf die 5-Minutenschritte runde.
Falls jemand nach so etwas suchen sollte, anbei der kurze Code... geht sicherlich eleganter, aber so oft bin ich garnicht mit Delphi beschäftigt... Grüsse, Autokrat
Delphi-Quellcode:
var
DateTime : TDateTime; Stunden, Minuten, Sekunden, Millisek : Word; begin // Aktuelle Uhrzeit ermitteln DateTime := Time; //oder eben direkt die zuvor ausgelesene Zeit des TDateTimePickers... // Uhrzeit splitten DecodeTime(DateTime, Stunden, Minuten, Sekunden, Millisek); // Auf 5-Minuten-Schritte runden Minuten := 5*Round((Minuten*2)/10); // 60 Minuten = 1 Stunde!!! if Minuten = 60 then begin // Minuten auf Null und Stunde eins rauf Minuten := 00; Stunden := Stunden + 1; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:45 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