![]() |
Minuten zählen und als formatierten hh.mm String ausgeben
Hallo Wissende
ich erhalte in 5 Parametern die Minuten von diversen Prozessen. Ich will nun alle zusammenrechnen und daraus einen formatierten String erstellen. Wenn alle minuten mm_1 - mm_5 leer oder 0 sind, dann soll das Ergebnis 0:00 oder 0'00 sein. Oder z.B. mm_1 = 65 und mm_2 = 36 dann soll das Ergebnis 1:41 oder 1'41 sein. die folgende Routine macht das schon, aber ich erhalte statt 1:02 => 1:2
Delphi-Quellcode:
Kann mir bitte jemand helfen? Ich bin nicht sehr mit der Formatierung von Strings vertraut...
mm_tot := mm_1 + mm_2 + mm_3 + mm_4 + mm_5;
hh_tot := (mm_tot div 60); mm_tot := mm_tot Mod 60; str_mtime := (inttostr(hh_tot)+''''+IntToStr(mm_tot)); lbl_mtime_udp.Caption := str_mtime; |
Re: Minuten zählen und als formatierten hh.mm String ausgebe
z.B. so:
Delphi-Quellcode:
ist zwar nicht perfekt, aber funktioniert ;-)
mm_tot := mm_1 + mm_2 + mm_3 + mm_4 + mm_5;
hh_tot := (mm_tot div 60); mm_tot := mm_tot Mod 60; if mm_tot < 10 then str_mtime := (inttostr(hh_tot)+'''' + '0'+ IntToStr(mm_tot)) //hier else str_mtime := (inttostr(hh_tot)+''''+IntToStr(mm_tot)); // und hier lbl_mtime_udp.Caption := str_mtime; |
Re: Minuten zählen und als formatierten hh.mm String ausgebe
Hallo,
schonmal FormatDateTime probiert? |
Re: Minuten zählen und als formatierten hh.mm String ausgebe
Delphi-Quellcode:
lbl_mtime_udp.Caption :=Format('%d:%.2d',[hh_tot,mm_tot]);
|
Re: Minuten zählen und als formatierten hh.mm String ausgebe
Einen hätte ich noch:
Delphi-Quellcode:
Freundliche Grüße
begin
dt := {Math.}SumInt([mm_1, mm_2, mm_3, mm_4, mm_5]) / {SysUtils.}MinsPerDay; lbl_mtime_udp.Caption := FormatDateTime('h:nn', dt); end; |
Re: Minuten zählen und als formatierten hh.mm String ausgebe
Danke für die vielen Zuschriften. :-)
Könntet Ihr mir noch sagen, wie ich den "Trenner" optional halten könnte, denn manchmal müsste ich zwischen Stunde und Minuten einen : oder ein ' setzen... |
Re: Minuten zählen und als formatierten hh.mm String ausgebe
Delphi-Quellcode:
lbl_mtime_udp.Caption :=Format('%d%s%.2d',[hh_tot,Trenner,mm_tot]);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:22 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