![]() |
da der ergibt sich aus der tollen berechnung von dauer! (siehe oben....MyHoursBetween in timer-proz.) und da beides strings sind übergeb ich die einfach so. bisher:=dauer;
oder hab ich schon wieder was falsch vertanden?? :nerd: gruss haegar |
Hi,
also, fangen wir einfach mal von vorne an. Du benötigst einen Wert Dauer den du zwischenspeicherst. Natürlich kannst du dort mit Now arbeiten. Die Methode GetTickCount ist hier asber auch eine Möglichkeit und für Dich vielleicht besser. Um einen Zeitabschnitt zu ermitteln verwende ich diese Methode wie folgt:
Delphi-Quellcode:
Jetzt hast du die Möglichkeit Laufzeit als millisekunden zu deinen Werten hinzuzuadieren.
// globale Variable (u.U. auch als Objektvariable FLaufzeit)
var Laufzeit : DWord; // im Programm für Start Laufzeit := GetTickCount; // im Programm bei Zeit abgelaufen Laufzeit := GetTickTime - Laufzeit; // Speichern als DWord oder wandeln in String Wenn Du dir den Typ TDateTime anschaust, dann stellst du fest, dass er als Double definiert ist, wobei der ganzzahlige Anteil die Tageswerte darstellt. Durch einfache Berechnung kannst du nun aus Laufzeit einen TDateTime equivalenten Doublewert bilden, den du dann zu einem TDateTime wert hinzuadierst. Oder du bleibst gleich außerhalb von TDateTime und gibst die werte in hh:mm:ss über eine eigene Berechnung an. Hierzu würde ich mir eine kleine Hilfsfunktion schreiben.
Delphi-Quellcode:
So, das müßte es gewesen sein. Wie du in dieser Funktion den String formatierst bleibt natürluch dir überlassen.
Function GetSZeit(Value : DWord) : String;
var Ts, hs, ss : String; Rest, Td, hd, sd : Dword; begin Result := '00:00:00'; If Value = 0 then Exit; // Stunden (entspricht 3600000 ms) Rest := Value / 3600000; Td := Trunc(Rest); Value := Value - Trunc(Rest); // Minuten (entspricht 60000 ms) Rest := Value / 60000; hd := Trunc(Rest); Value := Value - Trunc(Rest); // Sekunden (entspricht 1000 ms) Rest := Value / 1000; sd := Trunc(Rest); // String bilden Result := InttoStr(Td) + ':' + InttoStr(hd) + ':' + InttoStr(sd); end; Gruß oki |
danke erstmal, werds mir bei gelegenheit anschauen.
gruss haegar |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz