Executing code when setting properties
Можно создать процедуры Property Let, Property Set и Property Get с одинаковым именем. Таким образом можно создать группу связанных процедур, которые могут взаимодействовать. После использования имени для процедуры Property это имя нельзя использовать для присвоения имени процедуре Sub или Function , переменной или определяемого пользователем типа.
С помощью оператора Property Let можно создать процедуру, которая задает значение свойства. Например, можно создать процедуру Property, которая создает обратное свойство для растрового изображения в форме.
Это синтаксис, используемый для вызова процедуры Property Let .
Form1.Inverted = True
Фактическая работа по инвертированием растрового изображения в форме выполняется в рамках процедуры Property Let .
Private IsInverted As Boolean
Property Let Inverted(X As Boolean)
IsInverted = X
If IsInverted Then
…
(statements)
Else
(statements)
End If
End Property
Переменная уровня формы хранит параметр свойства. Объявив его закрытым, пользователь может изменить его только с помощью процедуры Property Let . Используйте имя, которое позволит легко определить, что переменная используется для свойства.
Эта процедура Property Get используется для возврата текущего состояния свойства.
Property Get Inverted() As Boolean
Inverted = IsInverted
End Property
Процедуры свойств упрощают выполнение кода в то же время, когда задано значение свойства. Используйте процедуры свойств для выполнения следующей обработки:
- Определять значение свойства перед присвоением другого значения.
- Использовать новое значение после того как оно присвоено свойству.
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.