Page 1 sur 1
[R] Chronomètre
Posté : mar. 29 avr. 2008 09:20
par yoruichiy
Bonjour,
je ne connais pas trop le langage de script, je souhaiterais savoir quelles fonctions utiliser pour chronometrer les actions realisees
merci par avance
Re: [..] chronometre
Posté : mar. 29 avr. 2008 09:37
par Tlem
Tiré de l'exemple de la documentation :
Code : Tout sélectionner
$begin = TimerInit()
sleep(3000)
$dif = TimerDiff($begin)
MsgBox(0,"Time Difference",$dif)
Re: [R] Chronomètre
Posté : jeu. 19 avr. 2018 09:00
par Teyir
Bonjour,
Je reviens sur ce vieux sujet car j'ai besoin de votre aide ...
J'aimerais qu'à la fin de mon script une msgbox nous affiche le nombre de minutes et secondes s'est effectué les actions.
J'ai essayé de reprendre votre idée mais le problème est que en milli seconde c'est un peux chaud...
Merci de votre aide

Re: [R] Chronomètre
Posté : jeu. 19 avr. 2018 09:24
par Tlem
Pour convertir le TimerDiff en seconde, divisez par 1000.
Après, comme d’habitude, pour convertir en minute divisez par 60. ^^
Re: [R] Chronomètre
Posté : jeu. 19 avr. 2018 09:33
par Teyir
Merci, Vous auriez un exemple car je ne connais pas bien cette "fonction"
Re: [R] Chronomètre
Posté : ven. 20 avr. 2018 11:03
par Tlem
La documentation de
TimerInit()
me semble pourtant assez claire ...
Et comme elle a été traduite, c'est encore plus simple. ^^
Du coup, avec le nombre de millisecondes obtenus, il vous reste juste à faire de la conversion numérique.
- millisecondes/1000 = secondes
- secondes/60 = minutes
- minutes/60 = heures
Ce qui nous donne pour 60000ms : 60000/1000/60 = 1mn
Après, rien ne vous empêche de faire des raccourcis. ^^
Par exemple, pour 7200000 ms
- ms => mn : 7200000/60000 = 120 minutes
- ms => heures : 7200000/3600000 = 2 heure
Edit :
Comme je sent poindre certaines questions, voici un exemple de convertisseur de millisecondes (retournées par la fonction
TimerDiff()
) en durée HH:MM:SS) :
Code : Tout sélectionner
HotKeySet("{ESC}", "Quit")
$begin = TimerInit()
while 1
$Time = TimerDiff($begin)/1000
$heures = ($Time-Mod($Time, 3600))/3600
$Time = Mod($Time, 3600)
$Minutes = ($Time-Mod($Time, 60))/60
$Time = Mod($Time, 60)
$Secondes=round($Time)
$aPos = MouseGetPos()
ToolTip(StringFormat("%02i:%02i:%02i", $heures, $Minutes, $Secondes), $aPos[0] + 10, $aPos[1] + 10, "En fonction depuis (Echap pour quitter) :")
sleep(150)
wend
Func Quit()
Exit
EndFunc
Re: [R] Chronomètre
Posté : ven. 20 avr. 2018 21:53
par mikell
La même en plus simple (enfin, peut-être)
$Time = TimerDiff($begin)/1000 $heures = Mod($Time/3600, 60) $Minutes = Mod($Time/60, 60) $Secondes = Mod($Time, 60)
Re: [R] Chronomètre
Posté : dim. 22 avr. 2018 10:57
par Tlem
Ça m'a l'air nickel ça...
Le code que j'ai mis dans mon message correspond à un code récupéré sur le forum US que j'avais déjà quelque peu simplier. Mais visiblement pas assez. ^^
Bien vu Michel
Envoyé de mon SM-N9005 en utilisant Tapatalk
Re: [R] Chronomètre
Posté : dim. 22 avr. 2018 22:46
par mikell
Merci, mais c'est pas de moi, j'ai trouvé ça dans un code de UEZ

Re: [R] Chronomètre
Posté : ven. 08 juin 2018 23:05
par walkson
Michel, le code a une erreur
Quand le nombre est faible, l'erreur est "juste" mais si le nombre dépasse un jour, l'erreur est visible.
Le code suivant doit être bon
$Time = 86399 ;3600 * 24 = 86400 = 1 jour ;$Time = 86400 * 12 + 64 ;12 jours 1 mn 4 sec $jours = Int($Time/86400) $heures = Int($Time/3600) - ($jours * 24) $Minutes = Int(Mod($Time/60, 60)) $Secondes = Int(Mod($Time, 60)) MsgBox(0,"", $jours &"j "& $heures &"h "& $Minutes &"m "& $Secondes &"s") MsgBox(0,"",StringFormat("%02ij %02i:%02i:%02i",$jours, $heures,$Minutes,$Secondes))