Do doevents loopuntil

cs_fred23 Messages postés 152 Date d'inscription lundi 5 août 2002 Statut Membre Dernière intervention 15 juillet 2006 - 15 juin 2004 à 10:27
cs_fred23 Messages postés 152 Date d'inscription lundi 5 août 2002 Statut Membre Dernière intervention 15 juillet 2006 - 17 juin 2004 à 17:09
Bonjour,

Voila mon pb,
j'ai une boucle
Do
DoEvents
Loop until

En fait, DoEvents peut etre sollicité par un Timer.
Et je voudrais que, si le timer arrive avant mon loopuntil, le Timer puisse arreter ma boucle et me permettre de sortir de cette boucle.

Que dois je rajouter et ou le rajouter.
Merci.

6 réponses

Tilois Messages postés 721 Date d'inscription dimanche 10 juin 2001 Statut Membre Dernière intervention 27 mars 2011 7
15 juin 2004 à 10:53
exsit do dans une boucle do-loop pour l'arreter!
0
capoueidiablo Messages postés 316 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 1 février 2010 1
15 juin 2004 à 10:54
salut,
Je comprend pas bien ton code, ton Do se trouve dans l'évennement Timer ? essaille de donnée un exemple précis je verrai ce que je peux faire :)

Sinon pour info :
'arret timer
Timer1.Enable = False
'Quitter un boucle
Exit DO
--Capoueidiablo--
0
cs_fred23 Messages postés 152 Date d'inscription lundi 5 août 2002 Statut Membre Dernière intervention 15 juillet 2006
15 juin 2004 à 11:14
Merci pour vos réponse.

Je test.

A+
0
cs_fred23 Messages postés 152 Date d'inscription lundi 5 août 2002 Statut Membre Dernière intervention 15 juillet 2006
15 juin 2004 à 11:18
En fait je me suis mal exprimé.

voila ce que j'ai

Private Sub Form_Load()
Timer1.Enabled = True
MSComm1.PortOpen = True
MSComm1.Output = Chr$(1) + Chr$(4) + Chr$(0) + Chr$(0) + Chr$(4) + Chr$(3)
Do
DoEvents
Loop Until MSComm1.InBufferCount >= 6
chaine = MSComm1.Input
If Mid(chaine, 1, 6) = Chr$(1) + Chr$(5) + Chr$(0) + Chr$(0) + Chr$(5) + Chr$(3) Then
boutonok = MsgBox("Modem Connected.", vbOKOnly + vbInformation, "TDXP")
End If
If boutonok = 1 Then
Form2.Show
Timer1.Enabled = False
End If
End Sub

Private Sub Timer1_Timer()If Timer1.Enabled True Then Timer1.Enabled False
boutonpb = MsgBox("Modem not connected.", vbOKOnly + vbCritical, "TDXP")
If boutonpb = 1 Then
Form2.Show
Form2.StatusBar1.Panels.Item(4) = "Failed"
End If
End Sub

Donc, si dans le form_load, l'evenement ne se produit pas avant le timer, le timer me dit "modem not connected" mais je voudrait aussi qu'il me ferme ma boucle Do Loop until.

Comment faire .?

MErci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pius1985 Messages postés 8 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 15 juin 2004
15 juin 2004 à 14:50
Tu peux déclarer un booléen en global et le mettre a vrai quand ton timer a une certaine valeur. Dans ta boucle tu met do..doevents..loop until booleen=true
voila j'espere avoir résolu ton problème ;-)
Alex
0
cs_fred23 Messages postés 152 Date d'inscription lundi 5 août 2002 Statut Membre Dernière intervention 15 juillet 2006
17 juin 2004 à 17:09
Parfait !!!
J'ai mis en appli ton idée. Et c'est tout bon.

Merci.
!!!
0