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

Построение меню и панелей инструментов

Создание собственных панелей инструментов и меню является также одним из элементов оформления интерфейса с учетом стандартов MS Windows.

Используя возможности VBA, вы можете при проектировании приложения заменить встроенную строку меню приложения на специальную строку меню. Таким способом можно ограничить количество команд меню или, наоборот, добавить новые команды.

Ограничение числа операций, которые может выполнять пользователь с помощью команд меню, панелей инструментов и, вообще, интерфейса программы, позволяет избежать некоторых возможных отрицательных последствий, как, например, случайное удаление данных и т. п.

Плавающие меню и панели инструментов

Панели инструментов и меню в Microsoft Office могут быть плавающими или закрепленными. При перемещении их в рабочую область приложения панель инструментов и меню становятся плавающими. В этом случае они будут располагаться поверх рабочей области приложения. Размещение панели инструментов или меню вблизи любого из четырех краев окна приложения делает их закрепленными.

Одной из новинок интерфейса MS Office 2000 является то, что меню стали адаптивными. В таких меню выводятся только наиболее часто используемые команды, а остальные — скрываются. Если вам нужна команда, которая в данный момент скрыта, то для этого достаточно выбрать в меню последний пункт. После этого меню раскроется полностью.

Объекты и коллекции, применяемые для работы с меню и панелями инструментов

1. Панель команд (Commandbar) — объект, который используется в VB для управления меню и панелями инструментов. Данный объект позволяет программно управлять элементами интерфейса, включающими:

  • Строку меню, панели инструментов и контекстные меню.

  • Меню на строке меню и панелях инструментов.

  • Подменю в меню, подменю в контекстных меню.

2. Кнопочный элемент управления (ButtonControl) — кнопка на панели инструментов или элемент меню в меню, подменю или контекстном меню. Кнопка на панели инструментов и элемент меню имеют практически одинаковые свойства. Отличие только в том, что кнопка на панели инструментов может быть отображена только как значок, значок и текст или только текст, а элемент меню только как текст или значок и текст.

3. Комбинированный элемент управления (ComboBoxControl) — объект, представляющий собой пользовательское поле, выпадающий список или поле со списком на строке меню, панели инструментов, подменю или контекстном меню. Пользовательский комбинированный элемент управления может отображаться с надписью или без нее. Когда панель команд закреплена в вертикальном. положении, комбинированный элемент управления на данной панели становится невидимым.. Многие встроенные элементы управления, такие как, например, кнопка Отменить (Undo), считаются комбинированными элементами управления. Однако большинство свойств и методов данного объекта для них не доступно.

4. Всплывающий элемент управления (pop-up control) — объект, представляющий собой встроенный или пользовательский элемент управления на строке меню или панели инструментов, который отображает меню при щелчке на нем мышью. Этот объект также позволяет получить программный доступ к встроенным или пользовательским элементам меню в меню, подменю или контекстном меню, которые отображают подменю, когда указатель расположен над ним.

Многие встроенные элементы управления, например Выделение цветом, приравниваются к всплывающим элементам управления. Однако большинство свойств и методов, позволяющих изменить всплывающий элемент управления, недоступны для этих встроенных элементов управления.

Для работы в VBA с меню, панелями инструментов и т. п. необходимо познакомиться с объектами и коллекциями, предназначенными для этого. Иерархия этих объектов представлена на рис. 5.1.

Далее будут более подробно рассмотрены представленные на этом рисунке объекты и коллекции.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]