CreatePopupMenu()

Syntaxe

Resultat = CreatePopupMenu(#Menu)
Description
Crée un nouveau menu contextuel (PopUp) vide qui porte le numéro #Menu et devient le menu en cours de création. Il est alors possible d'utiliser les fonctions MenuItem(), MenuBar(), etc... La fonction DisplayPopupMenu() sera ensuite utilisée pour afficher ce menu contextuel à l'écran. Si #PB_Any est utilisé pour le paramètre '#Menu', le numéro du nouveau menu sera renvoyé dans 'Resultat'. Si le menu ne peut pas être créé, 'Resultat' prendra la valeur 0.

Pour gérer les évènements relatifs aux menus, voir la description des commandes suivantes:
WaitWindowEvent() (ou WindowEvent())
EventWindow()
EventMenu()

Exemple:

  If OpenWindow(0, 200, 200, 220, 120, "Exemple de menu contextuel")
    If CreatePopupMenu(0)        ; La création du menu contextuel commence...
      MenuTitle("Projet")        ; Vous pouvez utiliser toutes les commandes relatives au menu,
        MenuItem(1, "Ouvrir")    ; comme si c'était un menu normal...
        MenuItem(2, "Enregistrer")
        MenuItem(3, "Enregistrer sous")
        MenuItem(4, "Quitter")
        MenuBar()
        OpenSubMenu("Fic&hiers récents")
          MenuItem(5, "PureBasic.exe")
          MenuItem(6, "Test.txt")
        CloseSubMenu()
      MenuTitle("Editer")
      MenuTitle("Options")
    EndIf
    Repeat
      Select WaitWindowEvent()            ; Examine quel type d'évènement est survenu sur la fenêtre
        Case #WM_RBUTTONDOWN              ; Le bouton droit de la souris a été clické =>
          DisplayPopupMenu(0,WindowID(0))  ; On affiche le menu contextuel
        Case #PB_Event_Menu      ; Un élément du menu a été sélectionné
          Select EventMenu()     ; On recupère le numéro de cet élement...
            Case 1 : Debug "Menu : Ouvrir"
            Case 2 : Debug "Menu : Enregistrer"
            Case 3 : Debug "Menu : Enregistrer sous"
            Case 4 : Quitter = 1
            Case 5 : Debug "Menu : PureBasic.exe"
            Case 6 : Debug "Menu : Text.txt"
          EndSelect
        Case #PB_Event_CloseWindow
          Quitter = 1
      EndSelect
    Until Quitter = 1
  EndIf

OS Supportés

Tous

<- CreatePopupImageMenu() - Menu Index - DisableMenuItem() ->