CreatePopupImageMenu()

Syntax

Ergebnis = CreatePopupImageMenu(#Menü [, Flags])
Beschreibung
Erstellt ein neues leeres Popup-Menü, mit Unterstützung für Bilder bei seinen Einträgen.

Parameter

#Menü Die Nummer, mit der das neue Menü identifiziert wird. #PB_Any kann verwendet werden, um diese Nummer automatisch zu generieren.
Flags (optional) Keiner.

Rückgabewert

Gibt einen Wert ungleich Null zurück, wenn das Menü erfolgreich erstellt wurde, und Null wenn nicht. Wenn #PB_Any als #Menü Parameter verwendet wurde, dann wird bei Erfolg die generierte Nummer zurückgegeben.

Anmerkungen

Unmittelbar nach dem Erstellen des Menüs wird dieses das aktuelle Menü zum Einfügen weiterer Einträge. Es ist nun möglich, Funktionen wie z.B. MenuTitle(), MenuItem(), MenuBar(), OpenSubMenu() zum weiteren Aufbau des Menüs zu verwenden.

DisplayPopupMenu() kann benutzt werden, um dieses Popup-Menü an einer beliebigen Position auf dem Bildschirm darzustellen.

Um alle Menü-Ereignisse korrekt zu handhaben, siehe die Beschreibung der folgenden Befehle:
WaitWindowEvent() (alternativ WindowEvent())
EventWindow()
EventMenu()

Beispiel

  UsePNGImageDecoder() 

  If CreateImage(0,16,16,32)     
    StartDrawing(ImageOutput(0))
    Box(0,0,15,15,RGB(255,255,128))
    DrawRotatedText(-5,3, "+", 45, RGB(255,0,128))
    StopDrawing()
  EndIf
    
  OpenWindow(0, 200, 200, 200, 120, "Image Popup-Menu Example")
  
  If LoadImage(1,#PB_Compiler_Home + "examples/sources/Data/ToolBar/Open.png")  ; lädt ein Icon
    If CreatePopupImageMenu(0, #PB_Menu_ModernLook)      ; hier beginnt das Erstellen des Popup-Menüs...
      MenuItem(1, "Open", ImageID(1))      ; Zeigt das Icon an
      MenuItem(2, "Save")      ; Sie können alle Befehle zum Erstellen eines Menüs
      MenuItem(3, "Save as")   ; verwenden, ganz wie bei einem normalen Menü...
      MenuItem(4, "Quit", ImageID(0))      ; Zeigt unser eigenes Icon an
      MenuBar()
      OpenSubMenu("Recent files")
        MenuItem(5, "PureBasic.exe")
        MenuItem(6, "Test.txt")
      CloseSubMenu()
    EndIf
  
    Repeat
    Event = WaitWindowEvent()    ; überprüfe Window-Ereignisse
    
      Select Event
        Case #PB_Event_RightClick  ; rechte Maustaste wurde gedrückt =>
          DisplayPopupMenu(0, WindowID(0))  ; zeige jetzt das Popup-Menü an
          
        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 : End
            Case 5 : Debug "Menu: PureBasic.exe"
            Case 6 : Debug "Menu: Text.txt"
          EndSelect
          
      EndSelect
    Until Event = #PB_Event_CloseWindow
  EndIf

Siehe auch

CreatePopupMenu(), DisplayPopupMenu(), CreateMenu(), CreateImageMenu(), FreeMenu(), MenuTitle(), MenuItem(), MenuBar(), OpenSubMenu(), SysTrayIconMenu()

Unterstützte OS

Alle

<- CreateMenu() - Menu Inhaltsverzeichnis - CreatePopupMenu() ->