Thema: Delphi TDateTime Problem

Einzelnen Beitrag anzeigen

Marcel2906

Registriert seit: 17. Aug 2011
Ort: Warendorf
112 Beiträge
 
Delphi 2010 Professional
 
#9

AW: TDateTime Problem

  Alt 25. Aug 2011, 09:59
Nun werden meine Werte mit Datum in das Array eingetragen. Aber wenn ich Abfahrt - Ankunft rechne klappt es immer noch nicht. Bin mir ziemlich sicher, dass dort ein Minus Wert herauskommt, ich weiß aber nicht warum.

Zum Aufbau: Eingegeben wird Ankunftszeit, Abfahrtszeit und Verspätung. Falls die Pause zwischen Ankunft und Abfahrt kleiner ist als die Verspätung, wird die normale Abfahrtszeit ausgegeben. Andernfalls soll die Ankunftszeit + Verspätung ausgegeben werden.

Code:
     //Liste ausgeben
      StelleEintrag:=0;
         //Wenn Verspätung größer als Pause zwischen Ankunft und Abfahrt, Abfahrt verändern
         if Liste[StelleEintrag].Abfahrt-Liste[StelleEintrag].Ankunft<Liste[StelleEintrag].Verspätung then begin
            while ((StelleEintrag < length(Liste)) and (StelleEintrag<LängeListe)) do begin
               ListBox1.Items.Strings[StelleEintrag]:=
               ' '+Liste[StelleEintrag].Linie+ Tab +
               Liste[StelleEintrag].Ziel+Tab+
               (DateTimeToStr(Liste[StelleEintrag].Ankunft+Liste[StelleEintrag].Verspätung))+' Uhr'+Tab+
               TimeToStr(Liste[StelleEintrag].Verspätung)+Tab+'h';
               StelleEintrag:=StelleEintrag+1;
            end;
         end else
            //Wenn Verspätung kleiner als Pause zwischen Ankunft und Abfahrt, Abfahrt nicht verändern
            while ((StelleEintrag < length(Liste)) and (StelleEintrag<LängeListe)) do begin
               ListBox1.Items.Strings[StelleEintrag]:=
               ' '+Liste[StelleEintrag].Linie+ Tab +
               Liste[StelleEintrag].Ziel+Tab+
               DateTimeToStr(Liste[StelleEintrag].Abfahrt)+' Uhr'+Tab+
               TimeToStr(Liste[StelleEintrag].Verspätung)+Tab+'h';
               StelleEintrag:=StelleEintrag+1;
            end;
Funktioniert alles super, außer wenn die Ankunftszeit z.b. 25.08.2011 um 23:45 Uhr und Abfahrtszeit 26.08.2011 00:10 Uhr ist
  Mit Zitat antworten Zitat