PureBasic

CreatePopupImageMenu()

Синтаксис

Result = CreatePopupImageMenu(#Menu [, Flags])

Описание


Создает новое пустое всплывающее Меню, с поддержкой изображений для своих элементов.

Параметры

#Menu Номер, идентифицирующий новое Меню. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически.
Flags (дополн.) Этот параметр может быть комбинацией следующих значение (с помощью оператора '|'):
  #PB_Menu_ModernLook: Включить градиент и современный вид (влияет только на Windows)

Возвращаемое значение

Возвращает не нулевое значение, если Меню было создано успешно, в противном случае 0. Если в качестве параметра #Menu использовалось значение #PB_Any, то в случае успеха будет возвращен сгенерированный Номер.

Комментарии

После того, как Меню создано, оно становится активным, и дальнейшее добавление элементов пойдёт в него. После этого можно использовать такие функции как MenuTitle(), MenuItem(), MenuBar(), OpenSubMenu(), с помощью которых Вы можете заполнить Меню нужными элементами.

С помощью функции DisplayPopupMenu() это всплывающее Меню можно отобразить в любой позиции на экране.

Чтобы корректно обработать события Меню, смотрите описания следующих функций:
WaitWindowEvent() (как альтернатива: WindowEvent())
EventWindow()
EventMenu()

Пример

  If OpenWindow(0, 200, 200, 400, 120, "Пример Всплывающего Меню с картинкой")
  
    If CreatePopupImageMenu(0, #PB_Menu_ModernLook)      ; Начинается создание всплывающего Меню...
      MenuItem(1, "Открыть")      ; Для создания такого Меню вы можете использовать все команды
      MenuItem(2, "Сохранить")      ; точно так же, как с обычным Меню...
      MenuItem(3, "Сохранить как")
      MenuItem(4, "Выход")
      MenuBar()
      OpenSubMenu("Недавние файлы")
        MenuItem(5, "PureBasic.exe")
        MenuItem(6, "Test.txt")
      CloseSubMenu()
    EndIf
    
    Repeat
      Event = WaitWindowEvent()     ; проверим наличие событий окна
      
      Select Event
        Case #PB_Event_RightClick       ; нажата правая кнопка мыши =>
          DisplayPopupMenu(0, WindowID(0))  ; покажем всплывающее Меню
          
        Case #PB_Event_Menu        ; кликнут элемент всплывающего Меню
          Select EventMenu()       ; получим кликнутый элемент Меню...
            Case 1 : Debug "Menu: Открыть"
            Case 2 : Debug "Menu: Сохранить"
            Case 3 : Debug "Menu: Сохранить как"
            Case 4 : End
            Case 5 : Debug "Menu: PureBasic.exe"
            Case 6 : Debug "Menu: Text.txt"
          EndSelect
          
      EndSelect
      
    Until Event = #PB_Event_CloseWindow
  EndIf

См. также

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

Поддерживаемые OS

Все

<- CreateMenu() - Оглавление Menu - CreatePopupMenu()->