Hallo,
es ist nichts verwerfliches am Datentyp TDateTime, man muss nur mit ihm umgehen können. Auch ist der ganzzahlige Anteil von TDateTime nicht ein Datum, sondern wird von bestimmten Routinen so interpretiert. TDateTime kann Zeitpunkte, aber auch Zeitspannen bezeichnen.
Delphi-Quellcode:
uses
SysUtils, // TimeSeparator
DateUtils; // HourOf, MinuteOf, SecondOf
function HoursToStr(timespan: TDateTime): string;
var
hours, mins, secs: Word;
begin
hours := HourOf(timespan) + 24 * Trunc(timespan);
mins := MinuteOf(timespan);
secs := SecondOf(timespan);
Result := Format('%d%s%.2d%s%.2d', [hours, TimeSeparator, mins, TimeSeparator, secs]);
end;
Freundliche Grüße