Процедура Property Set позволяет создать процедуру свойства, в ходе которой устанавливается ссылка на объект. При присваивании объекта в процедуре Property Set используется ключевое слово Set.
В данном примере используется объект cForm. Объект cForm
содержит свойство Form, которое должно быть передано как объект Form. Код в модуле класса cForm приведен ниже:
Option Compare Database
' Объявление приватной переменной на уровне модуля.
Private mobjForm As Form
Public Property Get Form() As Variant
' Получение объекта, скрытого в приватной переменной (mobjForm) ,
' и запись его в значение свойства.
Set Form = mobjForm
End Property
Public Property Set Form(FormObject)
' Получение переданного объекта (FonnObject)
' и запись его в приватную переменную (mobjForm).
Set mobjForm = FormObject
End Property
При загрузке frmPropertySet форма передается в свойство Form. Поскольку это объект, используется ключевое слово Set. Затем можно получить имя объекта формы для окна сообщений. Ниже приведен код для формы frmPropertySet:
' В данном примере используется объект "cForm" . Об"ьект "cForm"
' содержит свойство "Form". При загрузке этой формы (frmPropertySet) она
' передается как объект в свойство "Form". При щелчке на кнопке
' "Property Set" считывается имя формы.
Private mobjForm As cForm Private Sub cmdClose_Click()
DoCmd.Close acForm, "frmPropertySet", acSaveNo
End Sub
Private Sub cmdPropertySet_Cliclt()
MsgBox "The form object (in the 'Form' property) has a name of: " _
mobjForm.Form.Name, vblnfonnation, "Property Set Example"
End Sub
Private Sub Form_Load()
Set mobjForm = New cForm
Set mobjForm.Form = Forms!frmPropertySet End Sub
Private Sub Form_Unload(Cancel As Integer)
Set mobjForm = Nothing
End Sub