CreatePopupMenu()
Syntax
Ergebnis = CreatePopupMenu(#Menue)Beschreibung
Erstellt ein neues leeres Popup-Menü. Wenn #PB_Any als '#Menue' Parameter verwendet wird, dann wird die Nummer des neuen Menüs als 'Ergebnis' zurückgegeben. Konnte das Menü nicht erstellt werden, wird als 'Ergebnis' 0 zurückgegeben.
Nach dem Erstellen des Menüs wird dieses das aktuelle Menü zum Einfügen weiterer Einträge. Damit ist es nun möglich, Befehle wie MenuItem(), MenuBar(), OpenSubMenu() etc. zu benutzen.
DisplayPopupMenu() kann benutzt werden, um dieses Popup-Menü an einer beliebigen Position auf dem Bildschirm darzustellen.
Um alle Menü-Ereignisse korrekt zu handhaben, sehen Sie in die Beschreibung der folgenden Befehle:
WaitWindowEvent() (alternativ WindowEvent())
EventWindow()
EventMenu()
Beispiel:If OpenWindow(0, 200, 200, 200, 120, "Popup-Menu Example") If CreatePopupMenu(0) ; hier beginnt das Erstellen des Popup-Menüs... MenuItem(1, "Open") ; Sie können alle Befehle zum Erstellen eines Menüs MenuItem(2, "Save") ; verwenden, ganz wie bei einem normalen Menü... MenuItem(3, "Save as") MenuItem(4, "Quit") MenuBar() OpenSubMenu("Recent files") MenuItem(5, "PureBasic.exe") MenuItem(6, "Test.txt") CloseSubMenu() EndIf Repeat Select WaitWindowEvent() ; überprüfe Window-Ereignisse Case #WM_RButtonDown ; rechte Maustaste wurde gedrückt => DisplayPopupMenu(0, WindowID(0)) ; stelle jetzt das Popup-Menü dar Case #PB_Event_Menu ; ein Eintrag des Popup-Menüs wurde angeklickt Select EventMenu() ; ermittle den angeklickten Menü-Eintrag... Case 1 : Debug "Menu: Open" Case 2 : Debug "Menu: Save" Case 3 : Debug "Menu: Save as" Case 4 : Quit = 1 Case 5 : Debug "Menu: PureBasic.exe" Case 6 : Debug "Menu: Text.txt" EndSelect Case #PB_Event_CloseWindow Quit = 1 EndSelect Until Quit = 1 EndIf
Unterstützte OS
Alle