Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Структурные особенности Visual Basic.docx
Скачиваний:
44
Добавлен:
17.11.2019
Размер:
2.86 Mб
Скачать

18.Редактор меню Menu Editor. Оконные приложения.Основные свойства объекта Menu. Примеры.

Редактор меню Menu Editor

Для проектирования меню всех видов используется редактор меню Menu Editor (Редактор меню) среды проектирования IDE (рис. 7.8). Редактор меню вызывается одним из следующих способов:

  • командой Menu Editor (Редактор меню) меню Tools (Инструменты);

  • нажатием кнопки Menu Editor на стандартной панели инструментов;

  • нажатием комбинации клавиш <Ctrl>+<E>.

Редактор создает меню для активного в данный момент окна, то есть, если активно MDI-OKHO, проектируется меню для него, если активна дочерняя форма, проектируется меню для дочерней формы. На рис. 7.8 показан редактор меню родительского окна, созданного автоматически мастером приложения Application Wizard.

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

  • поле Caption (Заголовок) — наименование пункта меню, то есть текст, появляющийся в меню;

  • поле Name (Имя) — имя меню. Используется для идентификации объекта при написании программных кодов;

  • раскрывающийся список Shortcut (Оперативная клавиша) — назначает комбинацию клавиш для быстрого вызова команды меню;

  • поле HelpContextID (Идентификатор справки) — ссылка на тему в справочной системе;

  • флажок Enabled (Доступно) — доступ к пункту меню;

  • флажок Visible (Видимость) — определяет, будет ли виден на экране элемент меню;

  • флажок WindowList (Список окон) — определяет наличие списка открытых окон.

  • Контекстное меню

  • Для приложения любого типа можно использовать удобное средство быстрого доступа к функциям — контекстное меню. Контекстное меню связано с некоторым действием (обычно это щелчок правой кнопки мыши на объекте) и вызывается в любом месте приложения. В исходном состоянии контекстное меню невидимо и визуализируется рядом с указателем мыши после вызова. Контекстным такое меню называется потому, что оно появляется рядом с выбранным объектом, и его состав зависит от содержания (контекста) этого объекта. После выбора команды из контекстного меню оно исчезает.

  • Проектируется контекстное меню как один из пунктов верхнего уровня строки меню. Поскольку меню должно быть скрыто и вызываться определенным действием, свойство visible проектируемого пункта меню необходимо установить в значение False.

  • Для визуализации контекстного меню на экране необходимо использовать метод popUpMenu формы. Например, для вызова меню File (Файл) при нажатии правой кнопки мыши достаточно написать такую условную конструкцию для события MouseUp формы:

  • If Button = vbRightButton

  • Then Form1.PopUpMenu mnuFile

  • End If

В этом примере при выполнении в форме события MouseUp (Нажатие на кнопку мыши) проверяется, какая кнопка нажата. В данном случае, при помощи внутренней константы Visual Basic 6 vbRightButton (Правая кнопка) проверяется нажатие на правую кнопку мыши и запускается метод PopUpMenu. В качестве параметра задается имя требуемого контекстного меню.

Оконные приложения

Существуют три варианта пользовательских интерфейсов оконных приложений: многодокументный (Multiple-Document Interface, MDI), однодокумент-ный (Single-Document Interface, SDI) и интерфейс Windows Explorer.

SDI-приложение, например Notepad.exe, имеет только одно окно. Для MDI-приложения, например Microsoft Word, характерно наличие нескольких окон, подчиненных одному родительскому. Такие языки разработки, как Visual Basic 5.0, позволяют быстро и просто создавать SDI- и MDI-приложения.

Выбирая тип интерфейса, руководствуйтесь назначением приложения. Если оно предназначено для обработки страховых претензий, лучше выбрать тип MDI, так как пользователю наверняка потребуется работать одновременно с несколькими претензиями (например, чтобы сравнить их). С другой стороны, для календаря вполне достаточно интерфейса SDI: пользователь вряд ли одновременно откроет два одинаковых календаря.

Многодокументный интерфейс

Такие приложения, как Microsoft Excel и Microsoft Word for Windows, используют MDI-интерфейс, позволяющий одновременно отображать несколько документов, каждый — в своем окне (рис. 12.10). MDI-приложения обычно снабжены меню Window для переключения между окнами документов.

Разрабатывая MDI-приложения на Visual Basic Вы можете присвоить свойству меню WindowList значение True. Если установить флажок WindowList объекта Menu в редакторе Menu Editor, в меню отобразится список открытых дочерних окон MDI. Только один пункт меню формы может иметь установленное свойство WindowList.

Однодокументный интерфейс

Пример SDI-интерфейса — приложение Microsoft WordPad, входящее в состав Microsoft Windows (рис. 12.11). Оно позволяет открывать только один документ — чтобы открыть второй, нужно сначала закрыть первый.

SD1 — самый распространенный тип интерфейса приложений; большинство примеров в руководстве Visual Basic Programmer's Guide используют именно SDI-интерфейс.

Интерфейс Windows Explorer

Кроме двух основных типов интерфейса — SDI и MDI, существует еще один, причем весьма популярный — Windows Explorer (рис. 12.12). Он представляет собой одно окно, разделенное на две области: одна (обычно левая) содержит древовидное представление иерархии объектов, другая же представляет собой область для отображения текущего объекта. Этот тип интерфейса больше других подходит для перемещения среди множества документов, изображений или файлов.

Windows предлагает три разновидности интерфейса: многодокументный (Multiple-Document Interface, MDI), однодокументный (Single-Document Interface, SDI) и интерфейс Windows Explorer. MDI-интерфейс позволяет отображать несколько документов одновременно, каждый — в своем окне. Microsoft Excel и Word for Windows имеют MDI-интерфейс. SDI-приложения выводят одно окно и не имеют дочерних окон. Microsoft WordPad — пример однодокументного интерфейса. Интерфейс Windows Explorer позволяет перемещаться между множеством документов или файлов. Левая часть окна этого интерфейса отображает дерево объектов, а правая — конкретный объект.

В Visual Basic 6.0 объект Menu создается с помощью Редактор меню. Объекты Menu привязаны к форме, для которой они создаются, но их можно изменить во время выполнения или отобразить как контекстное меню. Меню, созданные с помощью объекта Menu, изначально не поддерживают заливку, значки или внедренные элементы управления; можно создать только меню в "плоском" стиле Windows 98.