TTime, TDateTime

timeplus Messages postés 4 Date d'inscription mercredi 5 mars 2003 Statut Membre Dernière intervention 13 avril 2004 - 12 avril 2004 à 19:28
timeplus Messages postés 4 Date d'inscription mercredi 5 mars 2003 Statut Membre Dernière intervention 13 avril 2004 - 13 avril 2004 à 12:18
Bonjour,

J'ai des valeurs de temps (h, mn, sec) qui vont dépasser 24 heures, 59 mn, et 59 sec. Avec un TimeToStr ou ce genre de chose, arrivé à 24 heures, 59 mn, et 59 sec, je retombe à zéro (00:00:00).

Quelqu'un peut-il me dire comment gérer des valeurs de temps pour aller au-delà de minuit tout en conservant un affichage de temps correct du type 42:12:57 ? Si ce n'est pas possible avec TTime ou TDateTime, comment puis-je faire ?

Merci pour l'aide...

TimePlus

2 réponses

cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
12 avril 2004 à 23:20
Uses DateUtils;

procedure TForm1.Button1Click(Sender: TObject);
var StartTime : TdateTime;
NowTime : TdateTime;
ElapsedTime : TdateTime;
ElHours : Word;
ElMinutes : Word;
ElSeconds : Word;
Ms : Word;
Ecoule : Integer;
begin
StartTime:=strtotime('12:00:00');
StartTime:=StartTime+StrToDate('10/04/2004');
NowTime:=Now;
ElapsedTime:=Now-StartTime;
DecodeTime(ElapsedTime,ElHours,ElMinutes,ElSeconds,ms);
Ecoule:=ElHours+(DaysBetween(NowTime,StartTime)*24);
Label1.Caption:='Demarrage le :'+DatetoStr(StartTime)+' a '+TimeTostr(StartTime);
Label2.Caption:='Maintenant on est le :'+DatetoStr(NowTime)+' a '+TimeTostr(NowTime);
Label3.Caption:='Il y a :'+IntToStr(Ecoule)+' Heures '+
IntToStr(ElMinutes)+' Minutes '+
IntToStr(ElSeconds)+' Seconde écoulèes.'
end;

Bon Coding ....

ManChesTer.
0
Rejoignez-nous