bichoncanada
Messages postés47Date d'inscriptionmercredi 1 mars 2006StatutMembreDernière intervention31 mai 2006
-
30 mars 2006 à 16:33
Schlangan
Messages postés47Date d'inscriptionsamedi 21 août 2004StatutMembreDernière intervention11 décembre 2007
-
30 mars 2006 à 18:05
Bonjour,
je dois réaliser une sorte de timer qui se déclenche lorsque la puissance de mon laser n'est plus égale à 0.Le laser démarre et fonctionne à la puissance que l'on souhaite et il doit se couper tout seul au bout de 10 s grâce au timer. Pourriez vous me donner le code source permettant de réaliser cela.
Schlangan
Messages postés47Date d'inscriptionsamedi 21 août 2004StatutMembreDernière intervention11 décembre 2007 30 mars 2006 à 18:05
Bonjour.
Je ne sais pas si tu programmes en VB6 ou en VB.NET, mais ma réponse est pour VB6.
Tu vas tout d'abord prendre une variable qui va indiquer la puissance de ton laser. Par exemple : Dim p_laser As Long
Il faut aussi une variable qui va indiquer l'état du laser : Dim laser As Boolean
Ensuite il y a le Timer qui va servir à mesurer la durée du laser. Pour cela, tu lui met la propriété 'Interval' sur 10 secondes :
Timer1.Interval = 10000
Il faut que le chronomètre soit désactivé lorsque la puissance du laser est égale à 0. Donc par défaut :
Timer1.Enabled = False
Lorsque la puissance du laser devient plus grande que 0, alors tu fais, par exemple :
If p_laser > 0 Then Timer1.Enabled = True
Puis, le Timer s'activera dix secondes plus tard, en réalisant le code suivant :
Private Sub Timer1_Timer() laser False : p_laser 0
End Sub
Bien sûr, c'est à toi de gérer pourquoi et quand le laser s'active, ainsi que la boucle lui disant de ne rien faire lorsque laser = False.