Thema: Delphi Zeit addieren

Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Zeit addieren

  Alt 18. Jan 2004, 07:06
Hai TimmA,

hier mal eine Idee. Ist aber nicht getestet *gg*

Delphi-Quellcode:
var
  aZeiten: array[1..10] of tTime; //Array mit den Zeiten
  iTage, // Summe Tage
  iStunden, // Summe Stunden
  iMinuten, // Summe Minuten
  iSekunden: Integer; //Summe Sekunden

procedure TForm1.Button1Click(Sender: TObject);
var
  ndx: Integer;
  Hour, Min, Sec, MSec: Word; // Temp Variablen
begin
  iTage := 0;
  iStunden := 0;
  iMinuten := 0;
  iSekunden := 0;
  for ndx := Low(aZeiten) to High(aZeiten) do
    begin
      DecodeTime(aZeiten[ndx], Hour, Min, Sec, MSec);
      // Die Einzelnen Zeilteile addieren;
      iStunden := iStunden + Hour;
      iMinuten := iMinuten + Min;
      iSekunden := iSekunden + Sec;
    end;
  iMinuten := iMinuten + (iSekunden div 60);
  iSekunden := iSekunden mod 60;
  iStunden := iStunden + (iMinuten div 60);
  iMinuten := iMinuten mod 60;
  iTage := iStunden div 24;
  iStunden := iStunden mod 24;
end;
In diesem Demo müssen die Zeiten als tTime in dem Array gespeichert sein.
Dann addiere ich ersteinmal alle Stunden,Minuten und Sekunden. (For-Schleife)
Im letzen Teil werden die Überlaufe berücksichtigt.

z.B.: 123 sekunden sind 2 Minuten und 3 Sekunden. Die Minuten werden also um 2 erhöht und die sekunden auf 3 gesetzt.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat