Visual Basic 6. Руководство разработчика



         

Доработанный элемент управления - часть 5


False

Const m_def_EnterFocusColor = &HFFOOFF

Const m_def_MandatoryColor = &HFF

Const m_def_LeaveFocusColor = &HFFFFFF

' Переменные свойств:

Dim m_Mandatory As Boolean

Dim m_EnterFocusColor As Variant

Dim m_MandatoryColor As OLE_COLOR

Dim m_LeaveFocusColor As OLE_COLOR

Эти объявления переменных и констант соответствуют свойствам, которые были заданы в окнах мастера. Все стандартные элементы уже реализованы, и их не нужно изменять, кроме процедур свойства Appearance. Мастер реализует это свойство как Integer, но использование перечислимого типа более предпочтительно для свойств, имеющих ограниченное число значений. Поэтому добавьте следующее объявление типа:

Enum Flat3D

Flat

[3D]

End Enum

и затем измените процедуры свойства следующим образом.

Программа 16.17. Модифицированные процедуры свойства Appearance

Public Property Get Appearance() As Flat3D

Appearance = Text1.Appearance

End Property

Public Property Let Appearance(ByVal New Appearance As Flat3D)

Text1.Appearance() = New Appearance

PropertyChanged "Appearance"

End Property

Нужно также изменить код процедуры Property Let для свойства MandatoryColor. Это свойство может быть установлено только в случае, если свойство Mandatory элемента управления равно True. Если оно равно False, то пользователь должен сначала изменить его, а затем задать свойство MandatoryColor.

Программа 16.18. Модифицированные процедуры свойства MandatoryColor

Public Property Let MandatoryColor(ByVal New_MandatoryColor As _

OLE_COLOR)

m_MandatoryColor = New_MandatoryColor

If m_Mandatory Then Text1.Backcolor = New_MandatoryColor

PropertyChanged "MandatoryColor"

End Property

Свойство Mandatory имеет тип Integer. Можно ввести любые целочисленные значения в его поле в окне Property. Определим следующий перечислимый тип:

Enum ReqOpt

[Optional]

Required

End Enum

Следует обратить внимание, что значение Optional должно быть заключено в квадратные скобки, так как оно является ключевым словом Visual Basic. Измените процедуры свойства Mandatory следующим образом.




Содержание  Назад  Вперед