Existe t'il une meilleure solution que DoEvents pour cr=E9er=20
une boucle d'attente d'un =E9v=E8nement dans une proc=E9dure ?
Le probl=E8me est que si la fonction Wait_Event (ci-dessous)=20
est remplac=E9e par une proc=E9dure (Sub), l'application=20
appelante reprend la main avant l'=E9v=E8nement Clock_Timer=20
(en fait d=E8s le premier DoEvents) sans attendre la fin de=20
l'ex=E9cution de la proc=E9dure.
Exemple:
Private Flag as boolean
Public function Wait_Event() as boolean
Flag =3D true
......
Do while Flag
DoEvents
Loop
Wait_Event =3D Flag
End function
"Jean Saint Jalmes" a écrit dans le message de news:235801c427b2$8cf1b810$
Bonjour,
Existe t'il une meilleure solution que DoEvents pour créer une boucle d'attente d'un évènement dans une procédure ? Le problème est que si la fonction Wait_Event (ci-dessous) est remplacée par une procédure (Sub), l'application appelante reprend la main avant l'évènement Clock_Timer (en fait dès le premier DoEvents) sans attendre la fin de l'exécution de la procédure.
Exemple:
Private Flag as boolean
Public function Wait_Event() as boolean Flag = true ...... Do while Flag DoEvents Loop Wait_Event = Flag End function
Private sub Clock_Timer() Flag = False End sub
Merci d'avance.
Jean
Hello,
Une solution serait de désactiver les contrôles qui ne doivent plus émettre
d'événements:
Control.Enabled = False
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"Jean Saint Jalmes" <anonymous@discussions.microsoft.com> a écrit dans
le message de news:235801c427b2$8cf1b810$a401280a@phx.gbl
Bonjour,
Existe t'il une meilleure solution que DoEvents pour créer
une boucle d'attente d'un évènement dans une procédure ?
Le problème est que si la fonction Wait_Event (ci-dessous)
est remplacée par une procédure (Sub), l'application
appelante reprend la main avant l'évènement Clock_Timer
(en fait dès le premier DoEvents) sans attendre la fin de
l'exécution de la procédure.
Exemple:
Private Flag as boolean
Public function Wait_Event() as boolean
Flag = true
......
Do while Flag
DoEvents
Loop
Wait_Event = Flag
End function
"Jean Saint Jalmes" a écrit dans le message de news:235801c427b2$8cf1b810$
Bonjour,
Existe t'il une meilleure solution que DoEvents pour créer une boucle d'attente d'un évènement dans une procédure ? Le problème est que si la fonction Wait_Event (ci-dessous) est remplacée par une procédure (Sub), l'application appelante reprend la main avant l'évènement Clock_Timer (en fait dès le premier DoEvents) sans attendre la fin de l'exécution de la procédure.
Exemple:
Private Flag as boolean
Public function Wait_Event() as boolean Flag = true ...... Do while Flag DoEvents Loop Wait_Event = Flag End function