![]() |
TimeToStr, mehr als 24 std.
Hallo allerseits,
gibt es eine funktion, mit der ich mir Zeiten als string ausgeben lassen kann? allerdings auch längere Zeiten als 24 Std. ist da schon was fertig vorhanden oder soll man sich das ggf selbst basteln? ist sicher schnell möglich, aber schöner würds aussehen, wenn man eine fertige funktion nutzen könnte
Delphi-Quellcode:
zeit: TDatetime;
zeit:= 25/24; Label1.caption:=timetostr(zeit); //gewünschte ausgabe: 25:00:00 oder ähnliches |
Re: TimeToStr, mehr als 24 std.
Hallo,
![]() Gruß Hawkeye |
Re: TimeToStr, mehr als 24 std.
Zeitwerte sind Uhrzeiten und nicht Zeitspannen. Da der tag nur aus 24 Stunen besteht, gibt es auch kein 25 Uhr.
|
Re: TimeToStr, mehr als 24 std.
Moin, Moin!
... "DaySpan", "DaysBetween", "HourSpan", "HoursBetween", usw ..., usw ... in "DateTime routines" ... Viele Grüße Markus :gruebel: |
Re: TimeToStr, mehr als 24 std.
Habs so gelösst..
Delphi-Quellcode:
Aufruf Bsp:
////////////////////////////////////////////////////////////////////////////////
function TimeToStringFormat(DeltaTime: TDateTime; MSecEnabled: Boolean): String; var Hour, Min, Sec, MSec: Word; begin DecodeTime(DeltaTime, Hour, Min, Sec, MSec); case MsecEnabled of True : Result:= IntToStr(Hour + (Round(Int(DeltaTime+(1/86400))*24))) + DateTimeToStringFormat(DeltaTime, ':nn:ss,zzz'); else Result:= IntToStr(Hour + (Round(Int(DeltaTime+(1/86400))*24))) + DateTimeToStringFormat(DeltaTime, ':nn:ss'); end;end; //////////////////////////////////////////////////////////////////////////////// function DateTimeToStringFormat(DateTime: TDateTime; Format: String): String; var tmp: String; begin DateTimeToString(tmp, Format, DateTime); Result:= tmp; end; ////////////////////////////////////////////////////////////////////////////////
Delphi-Quellcode:
Grüsse
TimeToStringFormat(10.0, True) = '240:00:00,000';
TimeToStringFormat(10.0, False) = '240:00:00; Schlingel [edit=Sharky] Ich habe die /// gekürzt um eine einen Scrollbalken zu vermeiden. Mfg, Sharky[/edit] |
Re: TimeToStr, mehr als 24 std.
Hallo,
vielen Dnak für die Antworten. @mkanzler Zitat:
@marcusB ich hab nur einen Zeitpunkt, den ich in diesem format ausgeben möchte. @Schlingel so eine funktion wollt ich umgehen. hab es jetzt als
Delphi-Quellcode:
gelöst. Hätt ja sein können, dass eine Funktion mir das so ausgibt, die ich noch nicht kannte.
inttostr(24*trunc(dat)+trunc(frac(dat)*24))+FormatDateTime(':nn:ss',dat);
Gruß Martin |
Re: TimeToStr, mehr als 24 std.
Zitat:
|
Re: TimeToStr, mehr als 24 std.
@mkinzler
Entschuldige die Frage, aber was sind Industrieminuten? Habe ich noch nie gehört. Grüße Klaus |
Re: TimeToStr, mehr als 24 std.
In der Industrie hat die Stunde 100 Minuten, deshalb redet man dann von Industrieminuten.
|
Re: TimeToStr, mehr als 24 std.
Danke, wieder etwas gelernt.
Klaus |
Re: TimeToStr, mehr als 24 std.
ich kann mkinzler nur zustimmen.
Hatte auch mal ein Projekt wo ich in Std:Min gerechnet hatte... Katastrophe ;-) Später wurde mir klar, dass es eigentlich ganz einfach ist: alles umwandeln in Integer und das Ergebnis dann teilen durch 60. Somit rechnet man im "Standard" mit dem Dezimalsystem... |
Re: TimeToStr, mehr als 24 std.
Hallo Leute.
Die sogenannte Industriezeit kenne ich aus der Zeitabrechnung. Dort wird bzw. wurde sie gerne verwendet, weil nur mit Stunden und Minuten gerechnet werden muss. Der Vorteil ist, dass dann mit dem normalen Stellenwertsystem gerechnet werden kann - Zwei mal 1.5 Stunden sind dann 3 Stunden. Mit dem Faktor 36 wird dann auf SI-Einheit sec umgerechnet. Zunehmend wird aber intern gleich mit Sekunden gerechnet - ist bei 32-bit Werten auch nicht mehr so problematisch. Und die "Leser" erfreuen sich an der gewohnten Darstellung (hh:mm:ss) für Zeitpunkte. Freundliche Grüße vom marabu |
Re: TimeToStr, mehr als 24 std.
Hi marabu,
wenn ich mich nicht sehr täusche sind nicht 1,5 = 3 Stunden gewesen SONDERN 1 Stunde und 30 minuten. Die Industrieminuten werden hauptsächlich ja im in der Gehaltsrechnung einbezogen: der Wert 4,33 = 52 Wochen /12 Monate ist da Auschlaggebend (ein Mittel zur berechnung) stell dir mal vor dein Gehalt würde nicht mit diesem Wert berechnet werden , dann würdest du im Februar weniger verdienen als im Januar ect... das nochmal zu Industrieminuten. mfg defede |
Re: TimeToStr, mehr als 24 std.
Zitat:
Zitat:
Klaus |
Re: TimeToStr, mehr als 24 std.
:duck: ja habs gemerkt, mein Fehler, soooooryyyy
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:39 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