Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Савельева 9-19.docx
Скачиваний:
10
Добавлен:
07.07.2019
Размер:
50.95 Кб
Скачать
  1. Объявление и использование объектов. Раннее позднее связывание объектов. Пример (фрагмент).

Работа с классами подразумевает, как и в других языках, работу с объектами классов путем оперирования объектными переменными - указателями или ссылками на созданный в памяти объект класса.

Существуют два способа объявления объектов класса:

- Ранняя привязка

Заключается в том, что объектная переменная сразу объявляется как переменная заданного класса. Раннее связывание осуществляется, если при объявлении переменной указывается конкретный тип данных

<Область видимости> [WithEvents] <имя объектной переменной> As <имя класса>

Создает объектную переменную ранней привязки заданного класса без инициализации, т.е. указывающую на Nothing. Чтобы реально создать объект необходимо использовать Set <имя объектной переменной> = New <имя класса>. Можно сразу создать объект при объявлении объектной переменной используя:

<Область видимости> [WithEvents] <имя объектной переменной> As New <имя класса>

WithEvents используется тогда, когда у класса есть события и вы хотите их обрабатывать. Если вы не хотите обрабатывать собыия, ключевое слово WithEvents можно опустить.

Пример:

Dim  clsOne As COne

Set clsOne = New COne

В данном случае, вызов объекта осуществляется с помощью оператора Set.

Или сразу

Dim clsOne As New COne

В данном случае, указатель на объект этого класса помещается в объектную переменную clsOne. Экземпляр класса создается в момент первого обращения. (Вызова свойства или метода).

 

- Поздняя привязка

Заключается в создании объектной переменной типа Object, не указывающую на какой-либо конкретный объект какого-либо класса. Привязка осуществляется в ходе выполнения программы программным кодом.

Пример:

Dim clsOne As Object

Set clsOne = New COne

Поздняя привязка используется для работы с несколькими классами одной переменной или при создании класса на удаленном компьютере. Если есть возможность использовать раннюю привязку, лучше использовать раннюю.

  1. Удаление объектов. Добавление событий. Пример (фрагмент).

События.Как элемент управления может генерировать события в форме, в которой он находится, так и объект, созданный на основе вашего класса, способен порождать события в форме или модуле, в котором он объявлен. При этом вне класса вы можете написать для того или иного события его обработчик. Два события предопределены в любом классе - Initialize и Terminate. Соответственно они возникают при создании и уничтожении объекта класса.

Используя Class Builder, легко добавить в класс события и их аргументы. Для этого необходимо объявить событие в классе Class/New/Event. Вызывать то или иное событие можно только из метода этого же класса с помощью оператора RaiseEvent. Например: RaiseEvent FindWindStatus(параметры)

Обработчик события пишется в том модуле, где объявлена объектная переменная, указывающая на экземпляр данного класса.

Для использования событий объектная переменная должна быть объявлена с квалификатором WithEvents (см. ниже создание объектов класса) и без использования ключевого слова New в объявлении.

Dim WithEvents obj1 As cls1