BindGadgetEvent()
Syntaxe
BindGadgetEvent(#Gadget, @Callback() [, TypeEvenement])Description
Ajoute un évènement d'un gadget à la liste des évènements de la fenêtre.
Cet évènement est lié à la callback de la fenêtre.
Arguments
#Gadget Le gadget à utiliser. @Callback() La procédure à appeler lorsque l'évènement se produit.
Elle doit être déclarée comme ceci:Procedure EventHandler() ; Code ici... EndProcedureEventGadget(), EventWindow(), EventMenu(), EventType() et EventData() sont disponibles pour obtenir plus d'informations sur l'évènement.
Note: WindowEvent() et WaitWindowEvent() ne devraient jamais être appelées à l'intérieur du Callback(), car ça peut verrouiller un programme ou occasionner un comportement erroné.TypeEvenement (optionnel) Le type d'évènement à ajouter.
#PB_All peut être utilisé pour lier tous les types d'évènements.
- Pour une liste complète des types pris en charge, voir EventType().
Valeur de retour
Aucune.
Remarques
D'ordinaire, les évènements sont gérés avec les fonctions WindowEvent() et WaitWindowEvent(). Cette fonction ajoute un moyen supplémentaire de gestion des évènements avec PureBasic. Avec cependant un petit plus qu'est la possibilité de gérer les évènements en temps réel car la callback peut être invoquée dès que l'évènement se produit (utile pour ScrollBarGadget(), ScrollAreaGadget() etc.).
L'évènement ajouté peut être retiré avec UnbindGadgetEvent().
Exemple
Procedure ButtonHandler() Debug "Clic sur le ButtonGadget #" + EventGadget() EndProcedure OpenWindow(0, 100, 100, 200, 90, "Test Clic", #PB_Window_SystemMenu) ButtonGadget(0, 10, 10, 180, 30, "Cliquez moi !") BindGadgetEvent(0, @ButtonHandler()) ButtonGadget(1, 10, 50, 180, 30, "Cliquez moi !") BindGadgetEvent(1, @ButtonHandler()) Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow
Voir aussi
BindEvent(), BindMenuEvent(), UnbindGadgetEvent(), WindowEvent(), WaitWindowEvent()
OS Supportés
Tous