Setne sekundy na format HH:MM:SS

Odpowiedz Nowy wątek
2006-08-24 18:26
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 !

Pozostało 580 znaków

2006-08-25 13:24
0

Sprawdz FormatDateTime

Pozostało 580 znaków

2006-08-25 13:35
0

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

Pozostało 580 znaków

2006-08-25 13:43
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

Suma inteligencji na świecie jest wartością stałą, niestety ludzi przybywa.

Pozostało 580 znaków

2006-08-25 15:19
qs
0

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

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

:-)


tQ

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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