Ich habe eine Datetimepicker-Komponente in einem Delphi-Formular und ich möchte nur die Zeit bekommen. Wenn ich auf das Datum im Debug-Modus schaue, sehe ich 42544.621701
, und ich möchte nur 0.621701
ohne den Datumswert erhalten.Wie extrahiere ich gerade die Zeit von einer datetimepicker Komponente in Delphi?
3
A
Antwort
7
können Sie verwenden, um die Frac()
Funktion:
var
Time: TTime;
...
Time := Frac(DateTimePicker1.DateTime);
Oder können Sie die System.DateUtils.TimeOf()
Funktion verwenden, die sich um Frac()
mit einem aussagekräftigeren Namen lediglich eine inlined Wrapper:
uses
..., DateUtils;
var
Time: TTime;
...
Time := TimeOf(DateTimePicker1.DateTime);
5
Die Frage geht es eigentlich nicht um einen Date-Time-Picker. Das Steuerelement gibt Ihnen einen Datumswert zurück. Sie suchen nach einer Möglichkeit, nur den Zeitanteil zu extrahieren. Tun Sie das mit der TimeOf
Funktion von der System.DateUtils
Einheit.
MyTime := TimeOf(MyDateTime);
Dank, das war es –
_System.DateUtils_ eine Funktion 'TimeOf' hat, die sich um' Frac', aber mit einem beschreibenden Namen lediglich eine inlined Wrapper ist. –
Mit der Eigenschaft 'kind = dtkTime' verwenden Sie die Eigenschaft' Time', um die Uhrzeit abzurufen. –