Соглашения об именах
При создании формы или элемента управления VBA устанавливает свойство объекта Name (имя) по умолчанию. Это значит, первой созданной кнопке будет присвоено имя CommandButton1, второй – CommandButton2 и т.д. При разработке приложений с одной формой имя объекта обычно не вызывает никаких проблем, хотя такой код не обладает наглядностью и плохо читаем, и, с некоторой натяжкой, его можно оставить без изменений. Если же приложение состоит из нескольких форм, то будет трудно отличить первую кнопку первой формы CommandButton1 от первой кнопки второй формы CommandButton1. В таких случаях бывает полезным переименовать объекты так, чтобы они легче различались. Для именования объектов и переменных в мире WINDOWS существует соглашение об именах, называемое венгерской нотацией.
Суть соглашения состоит в том, что имя объекта начинается с префикса, который определяет вид этого объекта. Далее следует собственно имя объекта, которое отображает его суть. Ниже приведены префиксы и примеры имен для элементов управления.
Элемент управления
| Префикс
| Пример имени
|
TextBox
| Поле
| txt
| txtФамилия
|
Label
| Надпись
| lbl
| lblИнформ
|
CommandBar
| Кнопка
| cmd
| cmdОК
|
ListBox
| Список
| lst
| lstСтуденты
|
ComboBox
| Поле со списком
| cbo
| cboФакультеты
|
ScrollBar
| Полоса прокрутки
| scr
| scrВниз
|
SpinButton
| Счетчик
| spn
| spnВыбор
|
OptionButton
| Переключатель
| opt
| optВыбор
|
CheckBox
| Флажок
| chk
| chkПол
|
ToggleButton
| Выключатель
| tgl
| tglПереключатель
|
Frame
| Рамка
| fra
| fraСтатус
|
Image
| Рисунок
| img
| imgСпутник
|
MultiPage
| Набор страниц
| mlt
| mltСтраницы
|
TabStrip
| Набор вкладок
| tab
| tabДва
|
UserForm
| Форма
| frm
| frmСессия
|
12.2.3. Некоторые общие методы
элементов управления
Методы
| Описание
|
SetFocus
| Устанавливает фокус на элементе управления. Часто применяется в программах обработки ошибок.
|
Move
| Перемещает элемент управления и изменяет его размеры[12].
|
Рассмотрим наиболее часто встречающиеся события элементов управления.
Событие
| Описание
|
СLick
| Происходит, когда пользователь щелкает по элементу управления
|
DblClick
| Происходит, когда пользователь дважды щелкает по элементу управления
|
KeyPress
| Происходит, когда пользователь нажимает любую клавишу на клавиатуре, кроме функциональных клавиш, клавиш передвижения курсора и клавиш управления
|
KeyDown, Ke y Up
| Происходит, когда пользователь нажимает/отпускает любую клавишу на клавиатуре
|
Change
| Происходит при изменении значения элемента управления (например, при выборе из списка нового элемента и т.д.)
|
Enter, Exit
| Происходит, когда элемент управления получает или теряет фокус.
|
Error
| Используется при сообщении об ошибке.
|
Обработка событий прописывается в коде объекта UserForm.
Для того чтобы выбрать нужное событие, дважды щелкните по нужному элементу управления. В результате этого действия на экране откроется модуль формы с пустой процедурой обработки события, установленного по умолчанию (рис. 12.5). Например, для СоmmandButton это событие Click. Если вас не устраивает текущее событие, то в списке процедур можно выбрать иное. Точно так же в списке объектов можно выбрать другой объект (если он существует).
Рис.12.5. Модуль формы, в котором отображается пустая процедура
обработки события Click