Convertir en delphi le time en integer

Stanis -  
nEm3sis Messages postés 722 Statut Membre -
Bonjour, s'il vous plait aidez moi à convertir en delphi le type time en integer.
je veux trouver la durée entre 2heures de type time en entier.
Exemple
var heuredebut:time;
heurefin:time;
durée:integer;

quand je fait l'operation, le système déclare qu'il ya incompatibilité.Alors que je le veux en entier pour pouvoir l'utiliser pour d'autres opérations.
merci de m'aider car c'est très urgent pour moi
que Dieu vous Bénisse.
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Apparement l'unité Dos n'existe pas en Delphi, mais en Pascal avec uses Dos, tu peux avoir accès à GetTime(heure,minute,seconde,centième) et GetDate(année, mois,jour,jourdela semaine) mais tous sont de type word et non integer
    0
  2. KX Messages postés 19031 Statut Modérateur 3 020
     
    Voici une opération faisable en Delphi, qui devrait te permettre à faire tes calculs :
    var Heure,Minute,Seconde,code:integer; Temps:string;
    begin
    Temps:=TimeToStr(Time);
    val(copy(Temps,1,2),Heure,code);
    val(copy(Temps,4,2),Minute,code);
    val(copy(Temps,7,2),Seconde,code);
    --
    La confiance n'exclut pas le contrôle 
    0
  3. nEm3sis Messages postés 722 Statut Membre 113
     
    en delphi 2 heures est inférieur a zéro donc si tu converti en integer tu tombera sur la valeur 0
    un peu inutile ...

    la valeur de 2 heures en delphi time est 0,0833333333333333
    tu trouve cette valeur facilement avec writeln(floattostr(EncodeTime(2, 0, 0, 0)));
    (unit sysutils)

    et le calcul précis pour 2 heures est
    (2*60*60*1000) / (24*60*60*1000) soit 1/12
    0