Классификация типов меню
В окне Frame Window имеется несколько органов управления, которые имеют отношение к меню.
В левом верхнем углу окна практически любого приложения имеется пиктограмма системного меню (рис. 3.1), при помощи которого можно изменить размеры или расположение окна, завершить работу приложения или просмотреть список открытых окон.
Рис. 3.1. Системное меню приложения OS/2 System Editor в частично локализованной версии операционной системы IBM OS/2
Системное меню представляет собой дочернее окно главного окна приложения Frame Window и имеет идентификатор FID_SYSMENU .
В правом верхнем углу главного окна приложения имеются кнопки минимизации и максимизации окна, которые дублируют соответствующие строки системного меню. Эти кнопки являются отдельным органом управления, идентифкатор окна которого равен FID_MINMAX .
На рис. 3.2 показано главное окно приложения OS/2 System Editor, имеющее меню верхнего уровня . Это меню состоит из строк File, Edit, Options и Help.
Рис. 3.2. Меню верхнего уровня и временное меню в окне приложения OS/2 System Editor
Помимо меню верхнего уровня, на рис. 3.2 также показано в раскрытом состоянии временное меню File, содержащее строки New, Open, Save, Save as и Autosave.
Обратите внимание, что после названия некоторых строк стоит многоточие. Это означает, что при выборе таких строк вместо немедленного выполнения функции на экране появится диалоговая панель, при помощи которой надо указать дополнительные параметры или выполнить другие действия.
Помимо текстовых строк, во временных меню обычно имеются горизонтальные разделительные линии. Кроме того, временные меню могут также содержать графические изображения. О том, как создавать такие меню, мы расскажем после того, как вы познакомитесь с функциями программного интерфейса Presentation Manager, предназначенными для работы с графическими изображениями.
На рис. 3.3 показана еще одна разновидность меню - меню второго уровня , которое появляется при выборе соответствующей строки временного меню .
Это меню состоит из строк On и Off.
Рис. 3.3. Меню второго уровня в приложении OS/2 System Editor
Заметим, что меню второго уровня может содержать ссылки на меню третьего уровня и т. д. Однако не следует увлекаться созданием многоуровневых меню, так как они неудобны в работе. Если вам нужно организовать настройку большого количества параметров, это лучше сделать при помощи другого органа управления, который называется блокнотом.
Последний тип меню, который мы рассмотрим в этой главе - это плавающие меню , которые в оригинальной документации называются меню Pop-Up . Обычно такое меню появляется, когда пользователь делает щелчок правой клавишей мыши по тому или иному объекту, расположенному в окне приложения. На рис. 3.4 показано плавающее меню, которое появляется после щелчка правой клавишей мыши по поверхности рабочего стола Workplace Shell. Это меню позволяет изменить свойства рабочего стола, завершить работу операционной системы и т. д.
Рис. 3.4. Контекстное меню рабочего стола Workplace Shell, которое отображается в виде плавающего меню
Плавающее меню, точно также как и временное, может содержать ссылки на меню второго уровня и графические изображения.