Создание модулей класса
Создание модулей класса
В VBA наряду с огромным числом встроенных объектов предусмотрена возможность создания пользовательских объектов. Использование таких объектов позволяет сократить текст программы и сделать его более понятным. Пользовательские объекты являются элементами пользовательских классов (или образно говоря, классы являются формами, из которых "пекутся" конкретные объекты). Пользовательские классы конструируются в модулях классов, которые создаются в редакторе Visual Basic выбором команды Вставка, Модуль класса (Insert, Class Module). При создании классов надо предусмотреть его инициализацию, описание свойств и методов, которыми будет наделен объект.
Опишем процесс создания класса в виде следующей последовательности шагов:
- Выберите команду Вставка, Модуль класса (Insert, Class Module). Откроется окно нового модуля класса.
- Нажмите клавишу <F4> и присвойте в появившемся окне свойству Name имя класса. Имя модуля класса является именем класса объектов.
- В разделе описания модуля объявите переменные уровня модуля, которые используются как "значения свойств".
- Инициализируйте класс при помощи процедуры Private Sub Class_Initialize. В этой процедуре надо указать значения, принимаемые по умолчанию переменными уровня модуля, описывающими "значения свойств".
- При помощи процедур Property Let объявите имена свойств, значениями которых являются числовые данные, а при помощи процедур Property set объявите имена свойств, значениями которых являются объекты. Если какое-то свойство — только для чтения, то для него не надо составить процедуру Property Let.
- При помощи процедур Property Get установите возможность считывания значения свойств.
- Создайте методы класса. Методы создаются при помощи обычных процедур и функций. Если метод возвращает число, то для его конструирования используется функция, а в остальных случаях — процедура.
- Допустимо также создание процедуры Private Sub Class_Terminate для удаления объекта из памяти по завершению работы с ним.