Application.ShowPopupMenu
Описание
Показывает всплывающее (контекстное меню) и возвращает идентификатор (ID) кликнутого пункта меню.
Совет: Если нужно показать всплывающее меню при правом клике пользователя по иконке в системном трее, посмотрите встроенную глобальную функцию g_OnSystemTrayMenu.
ПараметрыX
(число) X координата в пикселях.
Y
(число) Y координата в пикселях.
Menu
(таблица) Таблица данных меню, проиндексированная следующими ключами:
HAlign
(число) Горизонтальное выравнивание меню относительно оси X. Выбор из следующих констант (постоянных):
VAlign
(число) Вертикальное выравнивание меню относительно X. Выбор из следующих констант (постоянных):
WaitForReturn
(логический) Ожидать ли что контекстное меню будет отклонено. Если установлено значение истина (true), возвращаемым значением Application.ShowPopupMenu будет идентификатор (ID) выбранной команды меню или 0, если меню отменено. Если установлено значение ложь (false), команда меню запустит событие On Menu от проекта (Project) и страницы (Page), при выборе пункта.
Примечание: Если установлено значение ложь (false), при выборе пункта меню также будут вызваны g_OnUpdateMenuEnabled и g_OnUpdateMenuCheck. Кстати, если WaitForReturn установлена в ложь (false), команды меню, что использовались во всплывающем (контекстном) меню, точно так же ДОЛЖНЫ быть представлены в основной панели меню.
ClientCoordinates
(логический) Истина (true), если значения X и Y будут выбираться относительно верхнего левого угла страницы, ложь (false), если значения X и Y будут относительно верхнего левого угла экрана пользователя.
ВозвратResultVariable
(число) Идентификатор (ID) кликнутого пункта меню. Если происходит ошибка, будет возвращена -1. Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия
ПримерыПример 1if (e_Type == RIGHT_BUTTON_DOWN) then tblMenu = {}; tblMenu[1] = {}; tblMenu[1].Text = "&New Menu"; tblMenu[1].ID = 100; tblMenu[1].IconID = 0; tblMenu[1].Checked = false; tblMenu[1].Enabled = true; tblMenu[1].SubMenu = {}; tblMenu[1].SubMenu[1] = {}; tblMenu[1].SubMenu[1].Text = "&SubItem 1"; tblMenu[1].SubMenu[1].ID = 101; tblMenu[1].SubMenu[1].IconID = 1; tblMenu[1].SubMenu[1].Checked = false; tblMenu[1].SubMenu[1].Enabled = true; tblMenu[1].SubMenu[2] = {}; tblMenu[1].SubMenu[2].Text = "S&ubItem 2"; tblMenu[1].SubMenu[2].ID = 102; tblMenu[1].SubMenu[2].Checked = false; tblMenu[1].SubMenu[2].Enabled = true; nRes = Application.ShowPopupMenu(e_X, e_Y, tblMenu, TPM_LEFTALIGN, TPM_TOPALIGN, true, true); if (nRes == 0) then Dialog.Message("Menu Result", "Cancelled"); else Dialog.Message("Menu Result", "Menu ID selected = " .. nRes); end endДинамически создает всплывающее меню и показывает его когда пользователь кликает правой кнопкой мышки в любом месте поверхности страницы приложения.
Смотрите также: Связанные действия
|