Создание главного меню
Рассмотрим разработку следующей программы.
рис.6
Большинство Windows-приложений оснащено главным меню, которое представляет собой иерархическую структуру выполняемых функций и команд. Практически все функции, которые можно осуществить при помощи элементов управления, имеют свой аналог в виде пункта меню.
Для создания главного меню используется элемент управления MenuStrip (MainMenu – VS 2003). Перетаскиваем компонент MenuStrip на форму из ToolBox. MenuStrip отображается на панели невидимых элементов, а в форме отображаются элементы ToolStripMenuItem, которые в тексте программы включаются в контейнер компонента MenuStrip.
Примечание. Класс ToolStripMenuItem не наследует интерфейс Control, поэтому общим ЭУ не является. ОЭУ можно располагать на форме в любом месте и изменять размеры, а главное меню – только под заголовком.
рис.7
Каждый пункт главного меню имеет свое окно свойств, в котором, подобно другим элементам управления, задаются значения свойств Name и Text (см. 1,2).
рис.8
В поле Text перед словом Черный стоит знак & — так называемый амперсанд, указывающий, что Ч должно быть подчеркнута и будет частью встроенного клавиатурного интерфейса Windows (см. 1). Когда пользователь на клавиатуре нажимает клавишу Alt и затем Ч, выводится пункт Черный. Для разделения пунктов горизонтальной разделительной линией в свойстве Text пункта меню просто вводим знак тире. Существует и другой способ.
Пункты меню во время работы в дизайнере (конструкторе VS) с помощью свойства Checked=true можно пометить галочкой (см. 3) или с помощью свойства Enabled=false сделать пункт недоступным для работы (см. 4).
Быстрые клавиши
В Windows есть еще интерфейс для работы с так называемыми быстрыми клавишами, или акселераторами. Сочетание клавиш указывают в свойстве ShortcutKeys (см. 5). Следует назначать стандартным пунктам общепринятые сочетания клавиш.
С помощью свойства ShowShortcutKeys=false быстрые клавиши можно не отображать в меню. По умолчанию ShowShortcutKeys=true (см. 6).
Дата добавления: 2019-02-08; просмотров: 660;