Возвращает номер элемента в меню, определенном с помощью команды DEFINE POPUP, или в системном меню Visual FoxPro.
Синтаксис:
GETBAR(MenuItemName, nMenuPosition)
Параметры:
MenuItemName
Задает элемент меню.
nMenuPosition
Задает позицию в меню. Значение nMenuPosition может изменяться в диапазоне от 1 до общего числа элементов в меню. Позиция 1 соответствует первому элементу меню, позиция 2 второму элементу и т.д.
Результат:
Числовой.
Комментарии:
Используйте функцию GETBAR( ), чтобы определять, какой элемент какую позицию в меню занимает. Данная функция полезна при добавлении, удалении и перестановке элементов меню. Элемент добавляется в меню по команде DEFINE BAR, а удаляется командой RELEASE BAR. Позиции элементов меню могут быть изменены, если при создании меню в команде DEFINE POPUP было задано ключевое слово MOVER.
Пример:
* В следующем примере создается меню popDemo. Ключевое слово MOVER * было задано, поэтому элементы в меню можно переставлять. О том, как * переставлять элементы меню, см. описание предложения MOVER * команды DEFINE POPUP. * Меню активизируется, и последовательность функций GETBAR( ) в * составе PRMBAR( ) возвращает названия всех элементов. Переставив * элементы, нажмите клавиши CTRL+Z, чтобы вывести элементы на экран в * новом порядке. CLEAR ON KEY LABEL CTRL+Z DO showorder WAIT WINDOW "Press CTRL+Z to refresh." NOWAIT DEFINE POPUP popDemo MOVER FROM 2,2 DEFINE BAR 1 OF popDemo PROMPT 'One' DEFINE BAR 2 OF popDemo PROMPT 'Two' DEFINE BAR 3 OF popDemo PROMPT 'Three' DEFINE BAR 4 OF popDemo PROMPT 'Four' DO showorder ACTIVATE POPUP popDemo PROCEDURE showorder CLEAR @ 3,12 SAY '1 ' + PRMBAR('popDemo', GETBAR('popDemo',1)) @ 4,12 SAY '2 ' + PRMBAR('popDemo', GETBAR('popDemo',2)) @ 5,12 SAY '3 ' + PRMBAR('popDemo', GETBAR('popDemo',3)) @ 6,12 SAY '4 ' + PRMBAR('popDemo', GETBAR('popDemo',4)) RETURN