Bonjour a tous!
J'aimerai créer une procédure de temporisation qui me permette de faire une pause entre deux actions.
J'ai réussi a coder cela en mode console sans difficultés comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub Temporisation(ByVal temps As Double) Dim x As Double x = Timer + temps Do Loop Until x <= Timer End Sub 'Appel de la procédure: Temporisation(2)
Mais en évènementiel, ne trouvant pas comment récupérer la valeur de la fonction Timer , j'ai pensé a utiliser un timer qui a chaque tick incrémente une variable publique:
et une procédure qui utilise cette valeur comme précédemment :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub TimerAffichageTemporise_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerAffichageTemporise.Tick TimerAffichage = TimerAffichage + 1 End Sub
Seulement, cela ne fonctionne pas, pendant la boucle, le timer ne tick plus...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Sub Temporisation(ByVal NbTicks As Integer) frmPartie.TimerAffichageTemporise.Enabled = True frmPartie.TimerAffichageTemporise.Start() 'Demarrage du timer de tempo de l'affichage Dim tempo As Integer tempo = TimerAffichage + NbTicks Do 'on attend que le timer ait tické le nombre de fois demandé! Loop Until tempo <= TimerAffichage frmPartie.TimerAffichageTemporise.Stop() 'Arrêt du timer de tempo de l'affichage End Sub
Voilà, je ne sais pas vraiment quoi essayer de plus du coup, je viens vous demander de l'aide précieuse!
Merci!
Partager