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 и обратная связь.