Шаг 40 - Делаем меню сами

В прошлом шаге мы рассмотрели вопрос добавления собственного меню. При этом мы проектировали меню в дизайнере, но меню можно построить непосредственно в программе. Вот пример:

set sysmenu to && отключаем системное меню
* рисуем свое меню :-)
define pad m_menu of _msysmenu prompt 'Файл'
on pad m_menu of _msysmenu activate popup m_file
define popup m_file margin relative
define bar 1 of m_file prompt 'Выход'
on selection bar 1 of m_file do quiting

Запускаем программу:

40_1.gif (6222 b)

Меню работает. Кстати, на старых версиях Fox'а именно так и делали. Собственно и сейчас мастер меню генерирует код, который можно увидеть, скажем, в отладчике при выполнении программы:

40_2.gif (9985 b)

Отметим, что для добавления разделителя используются символы "\-", а для подчеркивания "горячей" буквы "\<"

40_3.gif (5437 b)

Менять меню по ходу выполнения программы можно так:

set sysmenu to menu1
* ...
set sysmenu to menu2
* ...
set sysmenu to menu3

Вот, пожалуй, и все.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Клементьев В.А - 16.08.2002