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
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
Merci pour ton aide. Je pense que ça va fonctionner pour ce que je veux faire. Je vais tester le code pour voir si ça fonctionne bien pour constituer un graphe qui cumule les temps par mois.

Bonne journée.

TimePlus
0