(изменено: Энергопроект, 7 апреля 2008г. 16:19:11)

Тема: контрол ActiveX

Разместил на форме компонент ActiveX Microsoft Forms 2.0 ComboBox, заполнил его нужными значениями. Как обрабатывать события этого компонента, AfterUpdate в частности  (после изменения значения combo изменить значение атрибута)?

Re: контрол ActiveX

События ActiveX на форме описываются так:

Sub [ActiveXSysName]_[EventName]()
End Sub

ActiveXSysName - системный идентификатор контрола на форме (!чуствителен к регистру!)
EventName - имя события которое необходимо обработать.

Re: контрол ActiveX

Код

sub comboReceiver_AfterUpdate()
     msgbox "kuku-ruku"
end sub

На событие изменения значения контрола не реагирует

На событие  click

sub comboReceiver_Click()
    msgbox "kuku"
end sub

реакция следующая:
Сообщение выдается до загрузки формы, и до выбора зачения списка (сразу после клика на каком-либо элементе, до закрытия списка)

P.S. Есть ли описание того, как в TDMS обрабатывать события контролов ActiveX?

Re: контрол ActiveX

1) У ComboBox не нашёл события AfterUpdate, зато есть Change
2) Событие Click генерится почему то только после изменения в контроле. Но всё равно, после открытия формы. Может бобина не в событии, а в инициализации контрола ?
3) описания нет.

Re: контрол ActiveX

1. AfterUpdate я высмотрел в контролах Excel (по идее библиотека контролов одна, или нет?). Событие Change работает - спасибо
2. С click-ом дело действительно в инициализации контрола - спасибо
3.   :(

Re: контрол ActiveX

Это разные библиотеки. В Excell ... не помню какая используется, но не Forms2.0

Re: контрол ActiveX

Энергопроект пишет:

Разместил на форме компонент ActiveX Microsoft Forms 2.0 ComboBox, заполнил его нужными значениями. Как обрабатывать события этого компонента, AfterUpdate в частности  (после изменения значения combo изменить значение атрибута)?

А как вы элементы добавляли? Не могу добыть их, туплю видимо  :( Но до самого объекта достучалась, ибо цвет фона меняется без проблем.