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


         

Конструирование элемента управления - часть 4


10. Введите имя TimeOut и выберите переключатель Event. После этого к коду добавится еще одна строка.

Event TimeOut()

Как заставить произойти это событие? С помощью оператора RaiseEvent из любого места кода. Всякий раз, когда таймер должен сработать, можно вызывать событие TimeOut с помощью следующего ниже оператора.

RaiseEvent TimeOut

Событие TimeOut вызывается из кода элемента управления

Timer (мы позна­комимся с ним позже).

Только что был завершен костяк элемента управления

Alarm, нечто похожее было сделано ранее с помощью мастера интерфейса элемента управления ActiveX. На этот раз все элементы интерфейса элемента управления были добавлены вручную с помощью меню Tools. Проще позволить мастеру сформировать элемент управления автоматически, но знание того, как это можно сделать вручную, поможет добавить несколько свойств к существующему элементу управления без выполнения всех шагов мастера интерфейса элемента управления ActiveX.

Совет

Если запустить мастер интерфейса элемента управления

ActiveX для изменения существующего элемента управления, можно обнаружить, что мастер ставит символ комментария перед кодом пользователя. Поэтому всегда следует проверять свой код после обработки его мастером.

Команда Add Procedure не добавляет соответствующие строки в события ReadProperties и WriteProperties — их следует добавить вручную.

Программа 16.15. Сохранение и чтение свойств элемента правления Alarm

Private Sub UserControl ReadProperties(PropBag As PropertyBag)

CountDown = PropBag.ReadProperty ("CountDown", CountDown)

m_AlarmTime = PropBag.ReadProperty ("AlarmTime", AlarmTime)

End Sub

Private Sub UserControl_WriteProperties(PropBag As PropertyBag)

PropBag.WriteProperty "CountDown", m_CountDown, False

PropBag.WriteProperty "AlarmTime", m_AlarmTime, 0

End Sub                                   __ ___ ___ ___ __

В заключение, нужно добавить следующий ниже код, также вручную, для инициализации значения свойства.

Private Sub UserControl InitProperties()

m_CountDown = True

Running = False

End Sub




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