Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Chronomètre utilisant la variable NUMBER_TICK Lun 7 Déc 2015 - 12:49 | |
| Bonjour à tous, - Jack a écrit:
- La prochaine version aura la variable NUMBER_TICKS qui donnera le nombre de millisecondes écoulées depuis l'allumage du PC.
Je profite de cette nouvelle version de PANORAMIC (la version 0.9.27i2) pour implémenter la nouvelle variable NUMBER_TICKS dans mon chronomètre. L'appel à la DLL de Windows est donc supprimé : - Code:
-
dll_on "kernel32" Compteur_Reference% = dll_call0("GetTickCount") au profit de la variable NUMBER_TICKS : - Code:
-
Compteur_Reference% = NUMBER_TICKS
Nouveau code : - Code:
-
' ------------------------------------------------------------------------------ ' Chronomètre v2 ' Marc37 ' http://panoramic-language.pagesperso-orange.fr/French/index.html ' ------------------------------------------------------------------------------
DIM Compteur%, Heures, Minutes, Secondes, Millisecondes, Still%, Couleur%, a, b%, Compteur_reference% DIM HH$, MM$, SS$, MS$ DIM Affichage$
LABEL Bouton_Start, Bouton_Pause, Bouton_Stop, Bouton_Raz, Changement_Couleur, Comptage
Affichage_Mask()
TIMER 6 TIMER_INTERVAL 6, 25 TIMER_OFF 6 ON_TIMER 6, Comptage
Couleur% = 1
ON_CLICK 1, Bouton_Start ON_CLICK 2, Bouton_Pause ON_CLICK 3, Bouton_Stop ON_CLICK 4, Bouton_Raz ON_CLICK 5, Changement_Couleur
END ' ------------------------------------------------------------------------------ Bouton_Start: TIMER_ON 6 Compteur_Reference% = NUMBER_TICKS b% = Compteur_Reference% - compteur% STILL%=0 RETURN ' ------------------------------------------------------------------------------ Bouton_Pause: IF STILL%=1 THEN STILL%=0 : ELSE : STILL%=1 RETURN ' ------------------------------------------------------------------------------ Bouton_Stop: TIMER_OFF 6 RETURN ' ------------------------------------------------------------------------------ Bouton_Raz: TIMER_OFF 6 Compteur% = 0 CAPTION 5, "00:00:00,0" RETURN ' ------------------------------------------------------------------------------ Changement_Couleur: Couleur% = Couleur% + 1 IF Couleur% = 7 THEN Couleur% = 1 SELECT Couleur% Case 1 : FONT_COLOR 5, 255,0,0 Case 2 : FONT_COLOR 5, 0,255,0 Case 3 : FONT_COLOR 5, 0,0,255 Case 4 : FONT_COLOR 5, 0,255,255 Case 5 : FONT_COLOR 5, 255,0,255 Case 6 : FONT_COLOR 5, 255,255,0 END_SELECT RETURN ' ------------------------------------------------------------------------------ Comptage: Compteur_Reference% = NUMBER_TICKS Compteur% = (Compteur_reference% - b%) IF Compteur% = 8619999 THEN Timer_OFF 6 IF Still%=0 Heures = (Compteur% / (24*60*60*1000))*24 Minutes = frac(Heures)*60 Secondes = frac(Minutes)*60 Millisecondes = frac(Secondes)*1000 HH$ = str$(int(Heures)) : while len(HH$) < 2 : HH$ = "0" + HH$ : end_while MM$ = str$(int(Minutes)) : while len(MM$) < 2 : MM$ = "0" + MM$ : end_while SS$ = str$(int(Secondes)) : while len(SS$) < 2 : SS$ = "0" + SS$ : end_while MS$ = str$(int(Millisecondes)): while len(MS$) < 3 : MS$ = "0" + MS$ : end_while Affichage$ = HH$ + ":" + MM$ + ":" + SS$ + "," + left$(MS$,1) CAPTION 5, Affichage$ END_IF RETURN '------------------------------------------------------------------------------- SUB Affichage_Mask() WIDTH 0, 420 HEIGHT 0, 191 COLOR 0, 0,0,0 FONT_NAME 0, "arial" FONT_SIZE 0, 14
BUTTON 1 TOP 1, 100 LEFT 1, 2 WIDTH 1, 100 HEIGHT 1, 50 CAPTION 1, START
BUTTON 2 TOP 2, 100 LEFT 2, 102 WIDTH 2, 100 HEIGHT 2, 50 CAPTION 2, PAUSE
BUTTON 3 TOP 3, 100 LEFT 3, 202 WIDTH 3, 100 HEIGHT 3, 50 CAPTION 3, STOP
BUTTON 4 TOP 4, 100 LEFT 4, 302 WIDTH 4, 100 HEIGHT 4, 50 CAPTION 4, R.A.Z
ALPHA 5 TOP 5, 14 LEFT 5, 48 WIDTH 5, 380 HEIGHT 5, 80 FONT_SIZE 5, 48 FONT_COLOR 5, 255,0,0 CAPTION 5, "00:00:00,0" END_SUB Merci Jack ! | |
|