Bonjour,
Voici une question stupide, mais je ne trouve pas de réponse dans le forum. J'ai créé la boucle suivante pour tester les gadget "cliqué"; Or si je clique sur un gadget du 1er groupe pas de problème. Alors que sur un gadget du second groupe la boucle se répète indéfiniment, le bouton passant icontinuellement de oui à non. Faut-il utiliser un code initialisant le waitwindowevent avant le until. Merci.
Repeat
EventID = WaitWindowEvent()
Num = EventGadgetID()
If Num > 0 And Num < 451 ; premier groupe de gadgets
...
EndIf
If Num > 450 And Num < 466 ; deuxieme groupe de gadgets
y = Num - 450
If Aff(y) = "Oui"
Aff(y) = "Non"
Else
Aff(y) = "Oui"
EndIf
COLOR_BUTTON(Num, 860,20*y,30,20,#Vert,#Jaun,Aff(y))
EndIf
Until EventID = #PB_EventCloseWindow
Sortie de boucle waitwindowevent
Il faut vérifier la nature de l'évènement avant de le traiter:
En général, on utilise plutôt un "Select"
Code : Tout sélectionner
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Num = EventGadgetID()
If Num > 0 And Num < 451 ; premier groupe de gadgets
...
EndIf
If Num > 450 And Num < 466 ; deuxieme groupe de gadgets
y = Num - 450
If Aff(y) = "Oui"
Aff(y) = "Non"
Else
Aff(y) = "Oui"
EndIf
COLOR_BUTTON(Num, 860,20*y,30,20,#Vert,#Jaun,Aff(y))
EndIf
EndIf
Until EventID = #PB_EventCloseWindow
Code : Tout sélectionner
Select WaitWindowevent()
Case #pb_event_closewindow
...
Case #pb_event_gadget
Num = EventGadgetID()
...
endselect
Le chaos l'emporte toujours sur l'ordre
parcequ'il est mieux organisé.
(Ly Tin Wheedle)
parcequ'il est mieux organisé.
(Ly Tin Wheedle)