Setne sekundy na format HH:MM:SS

0

Witam !
Rano nie miałem dostępu do internetu więc musiałem skrobnąć funkcję samemu (leń :P ) i tak się zastanawiam czy jest to najszybsze możliwe rozwiązanie ?

function milisekundyNaCzas(ms : integer) : string;
var
//zmienne wprowadzone by kod był bardziej przejrzysty
   h, m, s: integer;
begin
   h:=ms div 3600000;
   m:=(ms mod 3600000) div 60000;
   s:=((ms mod 3600000) mod 60000) div 1000;

   Result := Format('%s:%s:%s', [FormatFloat('00', h), FormatFloat('00', m), FormatFloat('00', s)]);
end;

Przykład zastosowania:

showmessage('Komputer działa od' + milisekundyNaCzas(GetTickCount()));

Pozdrawiam !

0

Sprawdz FormatDateTime

0

Próbowałem już wcześniej ale to chyba działa tylko na czas, a nie liczbe ms

0

Nie wiem czy dobrze zrozumiałem problem ale czemu nie np:

Label4.Caption := FormatDateTime('hh:mm:ss:zzz',stop - start);  //stop i start to zmienne TDateTime
0

:-D a nie prościej użyć gotowych funkcji w Delphi

Label1.Caption := TimeToStr(TimeStampToDateTime(MSecsToTimeStamp(GetTickCount)));

:-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1