PB Temporisation en vb.net évènementiel

Résolu/Fermé
kikouyou1080 Messages postés 21 Date d'inscription dimanche 25 avril 2010 Statut Membre Dernière intervention 23 juillet 2013 - 30 avril 2010 à 15:01
 Utilisateur anonyme - 30 avril 2010 à 16:06
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:

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:

Private Sub TimerAffichageTemporise_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerAffichageTemporise.Tick
        TimerAffichage = TimerAffichage + 1
    End Sub


et une procédure qui utilise cette valeur comme précédemment :

 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


Seulement, cela ne fonctionne pas, pendant la boucle, le timer ne tick plus...

Voilà, je ne sais pas vraiment quoi essayer de plus du coup, je viens vous demander de l'aide précieuse!
Merci!

1 réponse

Utilisateur anonyme
30 avril 2010 à 16:06
bonjour,
je crois que celà depond de ce que tu veux faire avec, mais evenementiel ca doit être plus simple, pourquoi par exemple ne pas utiliser deux timers au lieu d'un puis arrête l'un alors que l'autre compte le delai.
0