timer en VB

timer en VB - Programmation

Marsh Posté le 28-06-2001 à 00:39:19    

Comment utiliser le timer en VB??
un timer qui decompte le tps: au debu le chronomètre s'active a 3 minute
puis decompte jusqu'a zero!!

Reply

Marsh Posté le 28-06-2001 à 00:39:19   

Reply

Marsh Posté le 28-06-2001 à 08:10:48    

Ben avec le controle timer c'est "pas trop dur"... on va pas tout te faire non plus..

Reply

Marsh Posté le 28-06-2001 à 10:42:06    

C'est pour cuire des oeufs ? Allumer le PC pour cela, c'est excessif  :)  
 
Le timer s'active (évenement associé à gérer) avec une périodicité paramètrable par le programmeur. Il ne fournit que des tops. A celui qui s'en sert d'avoir une variable "temps total", et de soustraire à chaque top le temps écoulé, puis de voir ce qui reste, non ?
 
Sous VB3, j'avais remarqué que les durées étaient "illusoires" à cause de leur "granularité" (sauf erreur de terme). Sous VB6, mieux ?
Les durées s'appuyent sur les tops d'horloge (18 et qq par seconde je crois). Si on veut 10 ms, 20ms, 40ms, on en a en fait 65. Si on veut 100, on en a 130. C'était du n * 65 ms, bien qu'on puisse faire un delay en "millisecondes".
 
Si on veut des durées très longues, il faut ruser car le temps maxi est limité. On prévoit un compteur de "tour" et un temps accepté par VB. A chaque top on décrémente le compteur, puis à zéro, c'est bon.

Reply

Marsh Posté le 28-06-2001 à 12:44:08    

il me semble que celui de VB6 tient bien et n'a pas ce problème là ...

Reply

Marsh Posté le 28-06-2001 à 23:18:52    

CARBON_14>je suis sceptique ... je dirais meme que y'a pas de problemes ... le timer est precis à la miliseconde pres ...
les tops d'horloge sont librements programmables (18 et qq, c'est le minimum, il me semble qu'on peut faire 65000 fois plus précis) et encore ca c'est pour le 16 bits ... avec les machines 32 bits c'est peut etre plus poussé ... :??:


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 29-06-2001 à 09:30:14    

HelloWorld> Sous VB3, c'était un problème potentiel. On veut 100ms, on fait 100 fois la manip : bof bof.. Surprise  :)  
 
J'avais à gérer des temps très longs (10 minutes, une heure) pour un collègue (mesures de vieillissement) donc moins gènant.
Pour les mesures rapides, j'utilisais une fonction en C (/DLL)qui permet de se passer de Windows (l'un des compteurs Windows est RAZ après 36 jours (je crois, de mémoire)). Gènant pour des mesures continues de deux mois.
Pas de pb de stabilité de Windows 16 bits, quand il n'y a que cette appli qui tourne.
 
C'était le bon vieux temps (?  :p ).
 
Si VB s'est amélioré de ce point de vue, c'est TRES bien.

Reply

Marsh Posté le 02-07-2001 à 22:30:47    

du tout, VB6 a ce petit probleme : faites un programme qui utilise pas mal de ressources et laisser tourner. Lancer un second programme utilisant un timer plus précis avec les API (j ai fé une classe permettant d'utiliser une résolution de 64 bits, donc pas de pb) et l'écart est la, minime, mais bien présent.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed