Tempo decorrido...

Delphi

07/07/2004

Como faço para saber quanto tempo (hh:mm:ss) passou desde do dia, por exemplo, 05/07/2004 as 15:00:00 até agora.


Fhpita

Fhpita

Curtidas 0

Respostas

Rômulo Barros

Rômulo Barros

07/07/2004

procedure TForm1.Button1Click(Sender: TObject);
Var
  Tempo1, TempoAtual : TDateTime;
begin
  Tempo1 := StrToDateTime(´07/07/2004 15:00:00´);
  TempoAtual := Now;
  ShowMessage(FormatDateTime(´hh:mm:ss´,TempoAtual - Tempo1));

end;

end.



GOSTEI 0
Fhpita

Fhpita

07/07/2004

É uma ideia, mais ele não calcula se a diferença de horário for mais de 24h. Tem alguma outra função que calcularia uma diferença de mais de 24h?


GOSTEI 0
Marcelo Saviski

Marcelo Saviski

07/07/2004

Tente assim:

var
  NumDias, Hour, Min, Sec, MSec: Word;
begin
  NumDias := Data2 - Data1;
  DecodeTime(Data2 - Data1, Hour, Min, Sec, MSec);
  Hour := Hour + NumDias * HoursPerDay;
  ShowMessageFmt(´Tempo decorrido ¬2dh:¬2dm:¬2ds´, [Hour, Min, Sec]);
end;
  


obs: não testei


GOSTEI 0
POSTAR