Thema: Delphi mit Zeiten Rechnen

Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#14

Re: mit Zeiten Rechnen

  Alt 14. Apr 2006, 17:46
Hallo RX3,

du willst einen Zeitraum von einem Zeitpunkt subtrahieren - das Ergebnis ist dann wieder ein Zeitpunkt. In deiner Musterrechnung gibst du aber ein Ergebnis an, welches weder das eine noch das andere ist, sondern eine Mischung aus beidem. Ist das wirklich dein Wunsch?

Ich habe dir die Routine aus dem von mir verlinkten thread einmal so abgeändert, dass sie dir diese Mischgröße ausgibt:

Delphi-Quellcode:
uses
  Math,
  DateUtils;

function DateTimeToStr3(dt: TDateTime; daySep: string): string;
var
  d: Integer;
begin
  d := Floor(dt); // Abstand in Tagen
  dt := dt - d; // Uhrzeit am Zieltag
  Result := Format('%d%s%s', [d, daySep, TimeToStr(dt)]); // Zeichenkette bilden
end;

procedure TDemoForm.TestButtonClick(Sender: TObject);
var
  dt: TDateTime;
  iSec, iDelta: Integer;
begin
  iDelta := 50 * 3600; // Stunden in Sekunden umrechnen
  dt := StrToTime('14:01:35'); // Uhrzeit im internen Format
  iSec := SecondOfTheDay(dt); // auch in Sekunden umrechnen
  iSec := iSec - iDelta; // Differenz bilden
  dt := iSec / SecsPerDay; // wieder in internes Format umwandeln
  ShowMessage(DateTimeToStr3(dt, 'd ')); // Kontrollausgabe
end;
Grüße vom marabu
  Mit Zitat antworten Zitat