Файл: ...\Samples\Solution\Menus\Fillmenu.scx
Этот пример демонстрирует добавление пунктов в меню во время выполнения программы.
Меню в этом примере создано в Конструкторе Меню и содержит единственную
подсказку и пустое подменю с именем empty_pop
.
Следующий код выполняется, когда пользователь выбирает любой пункт в меню.
![]() | |
---|---|
PROCEDURE takeaction(cPrompt) #DEFINE MSG_LOC "You chose " + cPrompt + "." IF cPrompt = "Release this menu" RELEASE PAD dynmenu of _MSYSMENU ELSE WAIT WINDOW MSG_LOC TIMEOUT 1 ENDIF |
Код, помещенный в событии Click кнопки cmdRefresh на форме, запускает меню.
![]() | |
---|---|
DO dynamic.mpr |
Затем для каждого элемента в списке определяется соответствующий пункт меню с подсказкой и текстом сообщения.
![]() | |
---|---|
FOR i = 1 TO THISFORM.lstMenu.ListCount DEFINE BAR i OF empty_pop PROMPT (ALLTRIM(THISFORM.lstMenu.List(i,1))) ; MESSAGE (THISFORM.lstMenu.List(i,2)) ENDFOR |
![]() | |
---|---|
DEFINE BAR i + 1 OF empty_pop PROMPT "\-" DEFINE BAR i + 2 OF empty_pop PROMPT "Release this menu" ; MESSAGE "Remove the Dynamic Items menu from the menu bar." |