tezcaa
Messages postés16Date d'inscriptionjeudi 27 novembre 2008StatutMembreDernière intervention16 décembre 2008
-
2 déc. 2008 à 17:53
tezcaa
Messages postés16Date d'inscriptionjeudi 27 novembre 2008StatutMembreDernière intervention16 décembre 2008
-
3 déc. 2008 à 14:21
j'ai donc fait un module ou on y trouve :
Public Sub Tim(ByVal Lbl As Label, ByVal Tmr As Timer, ByVal Nbr As
TextBox, ByVal btn_valid As Button, ByVal Grid As DataGridView, ByVal
PanelA As Panel, ByVal PanelB As Panel)
Static a As Integer
' Tmr.Start()
' a = 0
a = a + 1
Lbl.Text = a
If a > 9 Then
Tmr.Enabled = False
btn_valid.Visible = False
PanelA.Enabled = False
PanelB.Visible = True
Nbr.Focus()
essai = essai + 1
Call remplirGridFacil(Grid)
Grid.Visible = True
End If
End Sub
Dans mon programme principal j'ai :
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
a = 0
Call Tim(Label2, Timer2, nb5, btn_valid2, Grid2, Panel2, Panel3)
End Sub
Je reprends mon problème.
J'ai
deux timers dans mon application. Le premier timer (timer1) se met en
route, jusque là pas de prob. Si on clique sur un bouton valider, le
timer1 s'arrête et je voudrais que le timer 2 se mette en route(ce
qu'il fait), mais qu'il commence à partir de 0. Hors ici, il commence à
partir de la valeur où le timer 1 s'est arrêté. Je sais que le fait
d'utiliser a comme valeur static et ce que je veux c'est
contradictoire, seulement quand je mets ma valeur en dim, mon timer
dans mon application s'arrête à 1.
J'attends vos réponses, en ésperant avoir été plus claire cette fois ci.
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 3 déc. 2008 à 13:24
Même avec quelque chose dans ce genre, ca ne fonctionne pas :
Public Class Form1
Dim nb As New Integer
Public Sub Tim(ByVal Lbl As Label, ByVal Tmr As Timer, ByVal Nbr As TextBox, ByVal btn_valid As
Button, ByVal Grid As DataGridView, ByVal PanelA As Panel, ByVal PanelB As Panel, ByVal a As Integer)
Tmr.Start()
Lbl.Text = a
If a > 9 Then
Tmr.Enabled = False
btn_valid.Visible = False
PanelA.Enabled = False
PanelB.Visible = True
Nbr.Focus()
essai = essai + 1
Call remplirGridFacil(Grid)
Grid.Visible = True
End If
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
Call Tim(Label2, Timer2, nb5, btn_valid2, Grid2, Panel2, Panel3, nb)
nb += 1
End Sub
End Class
Note : Pensez à initialiser la variable nb à 0 après l'arrêt du Timer1 lors du clic sur le bouton
Valider
++
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 3 déc. 2008 à 11:42
Salut,
Déjà petite question à quoi te sert la variable a car si je me trompe pas à peine tu as appelé la fonction Tim que la variable a aura déjà atteint
la valeur 10 très très très rapidement. Ce qui fait que le Timer passé en paramètre ( Tmr ) à peine, il a démarré qu'il est déjà arrêté.
J'espère que tu n'utilises pas cette incrémentation pour créer une tempo