2016-05-02 8 views
0
var 
    Hour, Min, Sec, MSec: Word; 
begin 
    DecodeTime(ComboBox1-ComboBox2, Hour, Min, Sec, MSec); 
end; 

Dies ist der Code, aber es erhält Fehler?Ich möchte den Unterschied in Stunden zwischen zwei Zeiten berechnen. Welche Komponenten sollte ich verwenden: DateTimepickers oder ComboBoxes

+1

1. Was denken Sie, sollte der Unterschied von zwei Kombinationsfeldern sein ??? 2. DateTimePickers sind für den Datumseintrag wahrscheinlich besser als Comboboxen. –

+0

Life-Lektion: Sie werden häufig Fehler bekommen, wenn Sie sich entscheiden, nur Sachen zu machen. Welcher Teil deiner Ausbildung hat dich dazu gebracht zu glauben, dass Code etwas Sinnvolles tun würde? –

Antwort

7

DecodeTime erwartet eine TDateTime Variable. ComboBox1 und ComboBox2 sind Komponenten. Verwenden Sie TDateTimePicker und ihre DateTime Eigenschaften. (Oder möglicherweise die Time Eigenschaft, wenn das besser passt).

Um die Stunden zwischen beiden Zeiten zu berechnen, verwenden Sie DateUtils.HoursBetween statt DecodeTime.

hourDiff := HoursBetween(DateTimePicker1.DateTime,DateTimePicker2.DateTime); 
+0

Sie können auch Comboboxen verwenden, insbesondere wenn Sie eine bestimmte begrenzte Anzahl von Daten haben, die Sie in die Artikelliste aufnehmen. Aber Sie müssen auf sie zugreifen durch: StrToDatetime (Combobox1.Text) - StrToDatetime (Combobox2.Text) –

Verwandte Themen