Chrono Time [Résolu]

cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 7 mars 2006 à 14:01 - Dernière réponse :  cs_Delphiprog
- 8 mars 2006 à 18:06
Bonjour,

J'ai 3edit (eDebut, eFin, eDif) , 1button depart, 1button fin
Voila j'aimerai savoir comment je pourrai faire pour que quand je clique sur le button depart il m'affiche le temps actuel dans eDebut et quand je clique sur le button fin il m'affiche le temps actuel dans eFin et la difference dans eDif (le temps HH:MM:SS)

Si quelqu'un pourrait me venir en aide Je debute debute

Merci d'avance
Afficher la suite 

Votre réponse

24 réponses

Meilleure réponse
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 15:26
3
Merci
code teste qui fonctionne: (je n'ai pas renommer les composants)

procedure TForm1.Button1Click(Sender: TObject);

var str:string;

begin

debut:=now ;

DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',debut);

edit1.Text:=str

end;

procedure TForm1.Button2Click(Sender: TObject);

var str:string;

terme,deltaT:Tdatetime;

begin

terme:=now;

DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',terme);

edit2.text:=str;

deltaT:=terme-debut;

DateTimeToString(str,'hh-mm-ss',deltat);

edit3.text:=str;



end;

l'erreur vien du copié collé (encore!!)

DateTimeToString(hh-mm-ss',terme);

---->

DateTimeToString(hh-mm-ss',DeltaT);

milles excuses



@+

jlen

Merci jlen100 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 99 internautes ce mois-ci

Commenter la réponse de jlen100
Meilleure réponse
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 7 mars 2006 à 16:15
3
Merci
c'est parcequ'il compte les milisecondes si tu veux une soustraction exacte il faut utiliser d'autres fonctions de l'unité DateUtils :

function YearsBetween(const ANow, AThen: TDateTime): Integer; // Calcule le nobre d' Années entre deux dates
function MonthsBetween(const ANow, AThen: TDateTime): Integer; // Calcule le nobre de Mois entre deux dates
function WeeksBetween(const ANow, AThen: TDateTime): Integer; // Calcule le nobre de Semaines entre deux dates
function DaysBetween(const ANow, AThen: TDateTime): Integer; // Calcule le nobre de Jours entre deux dates
function HoursBetween(const ANow, AThen: TDateTime): Int64; // Calcule le nobre de Heures entre deux dates
function MinutesBetween(const ANow, AThen: TDateTime): Int64; // Calcule le nobre de Minutes entre deux dates
function SecondsBetween(const ANow, AThen: TDateTime): Int64; // Calcule le nobre de Secondes entre deux dates
function MilliSecondsBetween(const ANow, AThen: TDateTime): Int64; // Calcule le nobre de Milisecondes entre deux dates

@+
Cirec

Merci Cirec 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 99 internautes ce mois-ci

Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 14:37
0
Merci
salut;

var debut:Tdatetime;

procedure TForm1.departClick(Sender: TObject);

var str:string;

begin

debut:=now

DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',debut);

edebut.text:=str

end;

procedure TForm1.finClick(Sender: TObject);


var str:string;


terme,deltaT,:Tdatetime;




begin

terme:=now


DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',terme);


efin.text:=str;

deltaT:=terme-debut;


DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',terme);

edif.text:=str;


end;



@+

jlen
Commenter la réponse de jlen100
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 14:38
0
Merci
copié collé malheureux

procedure TForm1.finClick(Sender: TObject);

var str:string;

terme,deltaT,:Tdatetime;

begin

terme:=now

DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',terme);

efin.text:=str;

deltaT:=terme-debut;

DateTimeToString(hh-mm-ss',terme);

edif.text:=str;

end;
Commenter la réponse de jlen100
cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 7 mars 2006 à 15:02
0
Merci
J'aimerais afficher la difference de temps entre le clik sur départ et le clik sur fin

J'apercois qu'il m'affiche le meme temps que dans eFin?

Donc pour 30 seconde par exemple

Depart 15:01:30
Fin 15:01:45
Diff 00:00:15

J'espere avoir été comprehensible et que tu pourra me venir en aide
Commenter la réponse de cs_cricri_forever
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 15:09
0
Merci
entre 15:01:30 et 15:01:45 il n'ya que 15 secondes!!

@+

jlen
Commenter la réponse de jlen100
cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 7 mars 2006 à 15:13
0
Merci
Oui j'ai remarqué erreur de ma part

J'aimerais afficher la difference de temps entre le clik sur départ et le clik sur fin

J'apercois qu'il m'affiche le meme temps que dans eFin?

Donc pour 15 seconde par exemple

Depart 15:01:30
Fin 15:01:45
Diff 00:00:15

J'espere avoir été comprehensible et que tu pourra me venir en aide
Commenter la réponse de cs_cricri_forever
cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 7 mars 2006 à 15:41
0
Merci
et pourrait tu apporter un peu d'explication a ce code pour ne pas faire un bète copier coller

mille merci
Commenter la réponse de cs_cricri_forever
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 15:58
0
Merci
la fonction now recupére l'heure actuelle dans une variable de type Tdatetime.

DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',debut);

convertit l'heure rangée dans début en chaine et la range dans str ( on
ne peut pas convaertir directement dans le caption--> erreur de
compilation

dans le premier bouton je la mémorise.

dans le second bouton je fais la même opération

puis je fais la différence entre fin et début (note que delphi se
débrouille tout seul comme un grand avec les heures, minutes et
secondes!!)

ensuite je convertis et j'affiche le résultat.

note également pour début et fin je l'ai formaté pour tout afficher
mais tu peux supprimer la partie date comme je l'ai fait pour la
différence.



@+

jlen
Commenter la réponse de jlen100
cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 7 mars 2006 à 15:59
0
Merci
Un petit prob quand au comptage

de 15:58:08 à 15:58:16 il me compte 7seconde

Comment sa se fait ??
Commenter la réponse de cs_cricri_forever
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 7 mars 2006 à 16:00
0
Merci
Salut,

La même en couleur

procedure TForm1.Button1Click(Sender: TObject);
var str:string;
begin
debut:= now ; // on récupère la date et l'heure à l'instant
DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',debut); // on la convertie en String
edit1.Text:=str // et on l'affiche
end ;
procedure TForm1.Button2Click(Sender: TObject);
var str:string;
terme,deltaT:Tdatetime;
begin
terme: =now; // on récupère la date et l'heure à l'instant
DateTimeToString(str,'dddd d mmmm yyyy:hh-mm-ss',terme); // on la convertie en String
edit2.text:=str; // et on l'affiche
deltaT:=terme-debut; // on fait la soustraction
DateTimeToString(str,'hh-mm-ss',deltat); // on la convertie en String
edit3.text:=str; // et on l'affiche
end;

@+
Cirec
Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 16:10
0
Merci
dans le format que j'ai mis je n'ai pas pris en comptes les
millisecondes il n'affiche donc que les secondes entières pour afficher
en plus le millisecondes fais

DateTimeToString(str,'hh-mm-ss.mm',deltat); // on la convertie en String





@+

jlen
Commenter la réponse de jlen100
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 16:12
0
Merci
on peut encore ecrire en mettant une virgule comme séparateur:

DateTimeToString(str,'hh-mm-ss,mm',deltat);
Commenter la réponse de jlen100
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 7 mars 2006 à 16:17
0
Merci
où alors tu ré-encode les deux DateTime avant la soustraction

@+
Cirec
Commenter la réponse de Cirec
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 16:31
0
Merci
d'accord avec toi Cirec

mais il ne faut peut-être pas trop s'emm... la vie !! qu'est ce que c'est qu'une seconde depuis le big bang!!

mais une éternité pou un muon(parcticule élementaire durée ~2µs)

@+

jlen
Commenter la réponse de jlen100
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 7 mars 2006 à 16:52
0
Merci
tu peux aussi utiliser la fonction:

function MilliSecondOfTheSecond(const AValue: TDateTime): Word;



qui te renvoie le nombre de milliseconde dans la seconde

ensuite tu peux forcer l'arrondi

mais il faut le faire pour les 3 affichages

@+

jlen
Commenter la réponse de jlen100
cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 7 mars 2006 à 20:34
0
Merci
et pour le mettre en composant comment dois je proceder ??
Commenter la réponse de cs_cricri_forever
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 7 mars 2006 à 23:40
0
Merci
Salut,
regarde déjà ce tuto de GrandVizir
http://www.delphifr.com/tutoriaux/DELPHI-DEVELOPPER-COMPOSANTS_195.aspx

et si tu as encore des questions ben on verra à ce moment

@+
Cirec
Commenter la réponse de Cirec
cs_cricri_forever 49 Messages postés mercredi 28 septembre 2005Date d'inscription 31 mars 2006 Dernière intervention - 8 mars 2006 à 00:19
0
Merci
il me met PVinfo.dpk(31): Paquet requis ' vclactnband ' non trouvé
Commenter la réponse de cs_cricri_forever
Cirec 4231 Messages postés vendredi 23 juillet 2004Date d'inscription 3 août 2018 Dernière intervention - 8 mars 2006 à 00:40
0
Merci
Euh de quoi tu parles ?
C’est quoi PVInfo.dpk ?
C’est le paquet du composant que tu as créé ?
A parement il te manque un fichier.
Donne un peut plus d'informations.

@+
Cirec
Commenter la réponse de Cirec

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.