4.7. Модификация панелей инструментов на этапе разработки
К изменениям на этапе разработки относятся создание панелей, добавление новых или встроенных элементов, удаление, группирование и разгруппирование элементов, а также изменение ширины текстовых полей, списков и полей со списками на панелях инструментов. Кроме того, можно выбирать другие значки для кнопок или редактировать их в Button Editor – редакторе кнопок.
4.7.1. Создание пользовательской панели инструментов
Для создания новой панели инструментов предназначен метод Add набора CommandBars, присваивая аргументу Position этого метода значение msoBarLeft, msoBarTop, msoBarRight, msoBarButton или msoBarFloating. При этом сообщается, каким должен быть создаваемый объект CommandBar – плавающей панелью инструментов или пристыкованной к соответствующей границе окна приложения:
Set cstm = CommandBars.Add(Name:=”Custom Tools”, _
Position:= msoBarFloating, MenuBar:=False, Temporary:=False)
cstm.Visible = True
4.7.2. Добавление и группирование элементов
Добавить элемент меню к объекту CommandBar, представляющему конкретную панель инструментов, позволяет метод Add набора CommandBarControls. Чтобы добавить встроенный элемент, необходимо указать ее идентификатор в аргументе Id:
Set mySpell = CommandBars(“Quick Tools”). Controls.Add(Id:=2)
Чтобы добавить пользовательский элемент, необходимо создать элемент и установить свойство OnAction на процедуру Visual Basic, которая будет запускаться при каждом щелчке этого элемента. Значение msoControlButton аргумента Type метода Add сообщает, что данный элемент меню является кнопкой:
Set databaseItem = CommandBars(“Standard”).Controls.Add _ (Type:=msoControlButton, Before:=3)
With databaseItem
.OnAction = “OpenDatabaseProc”
.FaceId = 987
End With
Visual Basic позволяет программно изменять внешний вид элементов, открывая доступ ко множеству свойств этих объектов. Чтобы начать группу на панели инструментов (т.е. отчеркнуть линией данный элемент), достаточно присвоить значение True свойству BeginGroup объекта CommandBarButton, CommandBarPopup или CommandBarComboBox, который представляет соответствующий элемент. Чтобы удалить линию, следует установить это свойство как False. Получить объект, представляющий конкретный элемент, позволяет выражение вида Controls(index), где index – название или индекс элемента.
Set databaseItem = CommandBars(“Worsheet Menu _ Bar”).Controls(“File”).Controls(“Open Database”)
databaseItem.BeginGroup = True
4.7.3. Добавление и инициализация текстовых полей, списков и полей со списками
Для добавления пользовательских текстовых полей, списков и полей со списками следует использовать Visual Basic, а именно: метод Add набора CommandBarControls; при этом аргумент Type указывает тип добавляемого элемента управления (таблица 4.1).
Таблица 4.1
Значения аргумента Type для соответствующего элемента управления
Элемент управление | Значение аргумента Type |
Тестовое поле (text box) | msoControlEdit |
Список (list box) | msoControlDropDown |
Поле со списком (combo box) | msoControlComboBox |
Чтобы указать, надо ли выводить слева от кнопки ее заголовок, используется свойство Style текстового поля, списка или поля со списком. Например:
Set newCombo = CommandBars(“Custom1”).Controls _
Add(Type := msoControlComboBox
With newCombo
.AddItem “01”
.AddItem “02”
.AddItem “03”
.AddItem “04”
.Style = msoComboNormal
.onAction = “ScrollToQuarter”
End With
Пока выполняется программ на Visual Basic, процедура, указанная в свойстве OnAction поля со списком, вызывается всякий раз, когда пользователь к обращается к данному элементу управления.
4.7.4. Удаление элементов с панели инструментов
Visual Basic позволяет удалять встроенные элементы с панели инструментов, помогая подстраивать пользовательский интерфейс программы. Вполне допустимо убрать из панели инструментов встроенный элемент и заменить его своей версией, позволяющей выполнять сугубо специфические операции. Или удалить ряд элементов, не используемых в программе, и тем самым упростить ее интерфейс. Модифицированные панели инструментов и их элементы можно вернуть в исходное состояние. Но удаление пользовательских панелей необратимо – восстановление потребует их повторного создания.
Для удаления пользовательской панели инструментов и встроенных элементов предназначен метод Delete. Стандартные панели инструментов удалять не разрешается:
CommandBars(“Standard”).Controls(“Print”).Delete
4.7.5. Восстановление встроенных панелей инструментов
Восстановить можно любые встроенные панели с помощью метода Reset:
CommandBars(“Standard”).Reset
- Министерство образования российской федерации
- М инистерство образования российской федерации
- Аннотация
- Содержание
- Тема 1. Основы программирования
- Создание, редактирование и запуск программ
- Переменные, константы и типы данных
- Управляющие конструкции
- Управляющая конструкция If…Then позволяет выполнять один или несколько операторов, если условие истинно. Можно использовать однострочный и блочный синтаксис. Например:
- Тема 2. Введение в модели объектов
- 2.1. Обзор моделей объектов
- 2.2. Автоматизация операций с использованием объектов
- 2.3. Программирование объектов другого приложения
- Тема 3. Объекты Microsoft Office
- 3.1. Объекты Microsoft Access
- 3.2. Объекты Microsoft Excel
- 3.3. Объекты Microsoft Power Point
- 3.4. Объекты Microsoft Word
- Тема 4. Меню и панели инструментов
- 4.1. Средства настройки пользовательского интерфейса
- 4.2. Выбор подходящих элементов пользовательского интерфейса
- 4.3. Система меню
- 4.4. Модификация системы меню на этапе разработки
- 4.5. Модификация системы меню в период выполнения
- 4.6. Панели инструментов
- 4.7. Модификация панелей инструментов на этапе разработки
- 4.8. Модификация панелей инструментов в период выполнения
- Тема 5. Элементы управления на базе ActiveX и диалоговые окна
- 5.1. Разработка нестандартных диалоговых окон
- 5.2. Использование нестандартных диалоговых окон
- 5.3. Работа с элементами управления в документе, листе или на слайде
- Тема 6. Оптимизация кода
- 6.1. Основные принципы оптимизации кода
- 6.2. Оптимизация кода для Microsoft Excel
- 6.3. Оптимизация кода для Microsoft Word
- Тема 7. Отладка и обработка ошибок
- 7.1. Создание обработчика ошибок
- 7.2. Иерархия обработчиков ошибок
- 7.3. Тестирование обработчика за счет эмуляции ошибок
- 7.4. Строчная обработка ошибок
- 7.5. Отключение обработки ошибок
- 7.6. Общие принципы отладки
- 7.7. Режимы конструктора, выполнения и прерывания
- 7.8. Окна отладки
- 7.9. Просмотр стека вызовов
- Тема 8. Разработка приложений для Интернета и Word Wide Web
- 8.1. Термины и концепции, связанные с Интернетом
- 8.2. Работа с гиперссылками
- 8.3. Сохранение документов и объектов в формате html
- 8.4. Элемент средства просмотра Web Microsoft
- 8.5. Элемент управления Internet Transfer
- Указывать допустимый сервер-заместитель в свойстве AccessType элемента управления Internet Transfer (таблица 8.4);
- Элемент управления Internet Transfer автоматически настраивается на нужный протокол, заданный в первой части url. Поэтому применение метода OpenUrl или Execute не требует установки свойства Protocol.
- 8.6. Элемент управления WinSock
- 8.7. Создание персонального Web-сервера
- Тестовые задания для закрепления материала учебного пособия
- Рекомендуемая литература
- Б) дополнительная литература