BindMenuEvent()
Syntax
BindMenuEvent(#Menü, MenüEintrag, @Callback())Beschreibung
Verknüpft ("bindet", englisch "bind") ein Menü-Ereignis mit einem Callback. Dabei handelt es sich um eine zusätzliche Möglichkeit zur Verwaltung von Ereignissen (englisch "events") in PureBasic, welche problemlos mit den regulären WindowEvent() / WaitWindowEvent() Befehlen arbeitet. Ein Menü-Ereignis kann mittels UnbindMenuEvent() losgelöst (englisch "unbinded") werden.
Parameter
#Menü Das Menü, mit dem das Ereignis verknüpft werden soll. MenüEintrag Der Menüeintrag innerhalb des Menüs, mit dem das Ereignis verknüpft werden soll. @Callback() Die beim Auftreten des Ereignisses aufzurufende Callback-Prozedur. Diese muss wie folgt deklariert werden: Procedure EventHandler() ; Code EndProcedureDie regulären Funktionen wie EventGadget(), EventWindow(), EventMenu(), EventType() und EventData() sind innerhalb des Callbacks verfügbar, um weitere Informationen über das Ereignis zu erhalten.
Hinweis: WindowEvent() und WaitWindowEvent() sollten nie aus einem Callback heraus aufgerufen werden. Dies kann das Programm blockieren oder falsches Verhalten hervorrufen.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Beispiel
Procedure TestHandler() Debug "Test menu event" EndProcedure Procedure QuitHandler() Debug "Quit menu event" End EndProcedure OpenWindow(0, 100, 100, 200, 50, "Click test", #PB_Window_SystemMenu) CreateMenu(0, WindowID(0)) MenuTitle("File") MenuItem(0, "Test") MenuItem(1, "Quit") BindMenuEvent(0, 0, @TestHandler()) BindMenuEvent(0, 1, @QuitHandler()) Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow
Siehe auch
BindGadgetEvent(), BindMenuEvent(), UnbindEvent(), WindowEvent(), WaitWindowEvent()
Unterstützte OS
Alle