Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Visual Basic и Visual Basic for Applications.doc
Скачиваний:
175
Добавлен:
01.05.2014
Размер:
579.07 Кб
Скачать

2.3. Создание и использование меню

Меню создается редактором Menu Editor, которое выбирается из меню Tools.

Основные свойства меню: 1) Name – имя меню; 2) Caption – текст, под которым меню выводится в интерфейс приложения; 3) Enabled (False) – деактивирует меню; 4) Checked – используется для ввода отметок меню True/False (вкл/выкл); 5) Visible (False) – делает элемент меню невидимым во время выполнения.

При выборе элемента меню происходит событие Click.

Список элементов меню (нижняя часть окна Menu Editor) содержит все элементы меню текущей формы. При вводе элемента в текстовое поле Caption он появляется также в списке. Выбор существующего ЭУ из списка позволяет редактировать свойство этого элемента.

Элемент из списка без отступа будет показан в строке меню как его заголовок. Элемент с одним отступом (четыре точки) показывается как элемент меню, открываемый при щелчке предыдущего заголовка меню. Элемент с отступом, сопровождаемый элементами с двумя отступами, становится заголовком подменю; элементы с двумя отступами, следующие за элементом с отступом будут элементами этого подменю. Элемент с дефисом в качестве значения свойства Caption представляет строку разделителя, который делит элементы меню на логические группы.

Для создания меню надо: 1) выбрать форму, 2) открыть окно Menu Editor, 3) в текстовое поле Caption ввести текст для 1-го заголовка строки меню; поместить амперсанд перед литерой, которая будет клавишей быстрого доступа для данного элемента (эта литера в меню окажется подчеркнутой); текст заголовка меню появится в списке элементов меню; 4) в текстовое поле Name ввести имя элемента; 6) установить другие свойства элемента; 7) выбрать Next для создания следующего элемента меню или щелкнуть Insert для вставки элемента между существующими элементами; стрелками вверх-вниз, можно переместить элемент в списке; 8) нажать ОК.

Для назначения клавиатурной комбинации надо: 1) открыть Menu Editor, 2) выбрать элемент меню, 3) выбрать функциональную клавишу или клавиатурную комбинацию в раскрывающемся списке Shortcut. Для удаления назначенной комбинации выбрать noлe в верхней части списка.

Правила построения имени элемента меню: 1) должно быть уникальным внутри меню, 2) может состоять из нескольких слов, 3) должно иметь мнемоническую клавишу для доступа (различные для разных элементов); 4) имена команд, которые требуют дополнительной информации прежде, чем они могут быть завершены, должны завершаться многоточием – это касается команд, которые открывают окна диалога; 5) использование префикса mnu; 6) для имени пункта подменю после префикса mnu должно стоять сокращенное имя родительских пунктов, а затем собственное имя:

Команда меню

Имя

File

mnuFile

File\Open

mnuFOpen

File\Save

mnuFSave

Каждое меню может включать до 5-ти уровней подменю.

Массив меню – это набор элементов одного меню, которые совместно используют одно имя и процедуры обработки события. Каждый элемент массива меню идентифицируется уникальным индексным значением, которое вводится в окне Index редактора Menu Editor. Элементы массива меню в списке элементов меню должны быть непрерывными (по значению индекса от 0) и располагаться на одном уровне.

Контекстное меню – плавающее меню, открывающееся, независимо от строки меню, при щелчке правой кнопкой мыши. Для открытия используется метод PopupMenu:

[объект.] PopupMenu имя_меню [,флаги [, x [, y [,стиль_элемента]]]]

Одновременно может быть открыто только одно контекстное меню. Параметр флаги определяет расположение меню.

Большинство приложений MDI содержат меню Window (в локализованных версиях – Окно). Это – специальное меню, в котором представлены заголовки всех открытых подчиненных форм, могут присутствовать также команды манипулирования ими. Для вывода открытых подчиненных форм может использоваться любое меню главной или подчиненной формы, для этого устанавливается в True свойство WindowList данного меню.