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

5. Способы объявления объектных переменных в Visual Basic.

Объектные классы дают возможность объявить специальный тип данных, который может поддерживать все традиционные элементы, с которыми уже знакомы программисты, работавшие в других объектно-ориентированных языках, то есть со свойствами, методами и событиями. С одной стороны, объектные классы Visual Basic напоминают модули кода. Допускается объявлять переменные уровня модуля и любое число общих процедур и функций. Можно даже объявить специальный тип процедур, называемый процедурой Property, который предлагает более мощный путь создания свойств класса. Главное различие между объектными классами и модулями кода лежит в способе их использования. Модуль кода просто позволяет комбинировать полезный код, константы и глобальные переменные в повторно используемых библиотеках. Когда вы добавляете модуль кода в проект Visual Basic, можно вызвать любую из его процедур и функций из любого другого модуля в проекте. При использовании объектного класса вы должны создать экземпляр этого класса. Затем установить или считать значения свойств, принадлежащих экземпляру класса, и использовать его процедуры и функции полностью независимо от всех остальных экземпляров этого же класса. Другими словами, объектный класс представляет собой некий суперпользовательский тип данных.

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

Контейнер(модуль класса или формы), в котором используется объект, должен содержать процедуры-события.

Существует два способа объявления имени объекта на основе класса и обращения к его методам и свойствам из приложения.

Первый способ основан на использовании ключевого слова New непосредственно при объявлении объектной переменной в строке Dim.

Например,

Dim mObject As New Class1'Class1 –имяклассапоумолчанию

Private Sub Command1_Click()'Процедура-событие

mObject.свойство=значение'Обращение к свойству

mObject.метод'Обращение к методу

…………

Set mObject=Nothing'Удалить ссылку на объект и

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

End Sub

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

В операторе присваивания указывается ключевое слово New или функция CreateObject с именем класса.

Например,

Dim mObject As Class1

Set mObject= New Class1

'или Set mObject= CreateObject(''Class1'')

………………

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

Если в программе используются события объекта, а не только методы и свойства, как в представленном выше фрагменте кода, то объект следует создавать с использованием ключевого слова WithEvents

Его особенностью является то, что оно не может использоваться совместно с ключевым словом New. Однако именно последнее слово обеспечивает доступ к объекту и событиям объекта из окна кода. Поэтому следует писать:

Dim WithEvents mObject As Class1

Private Sub Command1_Click()

SetmObject= New Class1

'или Set mObject= CreateObject(''Class1'')

mObject.свойство=значение

mObject.Метод

…………

SetmObject=Nothing'Удаление ссылки на объект

End Sub

Private Sub mObject_ИмяСобытия()

<Код, реализующий событие объекта mObject>

End Sub