Как из кода создать контекстное меню? - VB

Узнай цену своей работы

Формулировка задачи:

Всем привет, У меня приложение MDI. Я хочу в подчиненном окне создать контекстное меню. Для этого надо создать обычное меню, создать там обыкновенный пункт меню, но скрыть его, чтобы он не был виден в обычном меню, а появлялся по команде как контекстное меню. Проблема в том, что меню в подчиненной форме, даже если его полностью скрыть, заменяет меню основного окна. При этом изменение свойства NegociateMenus не имеет никакого эффекта. В принципе, можно запихнуть контекстные меню все подчиненных форм в меню основной формы, но это не очень удобно. У меня просто в рамках приложения можно создать окна разных типов, и хотелось бы, чтобы меню каждого отдельного окна находилось в нем самом. Может, контекстное меню можно вызвать из кода? Но как это сделать? Помогите, пожалуйста.

Решение задачи: «Как из кода создать контекстное меню?»

textual
Листинг программы
Private Declare Function CreatePopupMenu Lib 'user32' () As Long
Private Declare Function TrackPopupMenu Lib 'user32' (ByVal hMenu As Long, ByVal wFlags As Long, ByVal X As Long, ByVal Y As Long, ByVal nReserved As Long, ByVal hWnd As Long, ByVal lprc As Any) As Long
Private Declare Function AppendMenu Lib 'user32' Alias 'AppendMenuA' (ByVal hMenu As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long
Private Declare Function DestroyMenu Lib 'user32' (ByVal hMenu As Long) As Long
Private Declare Function GetCursorPos Lib 'user32' (lpPoint As POINTAPI) As Long
Private Declare Function ModifyMenu Lib 'user32' Alias 'ModifyMenuA' (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpString As Any) As Long

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5
Похожие ответы