COM Object Event
От: Nik_Nik  
Дата: 18.05.04 10:23
Оценка:
Здравствуйте.

Имеется COM объект (не контрол) ObjectTest.
В нем реализован Method — MethodTest и Event (Connection Point) — EventTest
Пишу в VB следующий код


Dim ObjT As New ObjTest

Private Sub Command1_Click()
    Dim str1 As String
    str1 = "1234567890"
    ObjT.MethodTest str1, 10    'это работает нормально
End Sub

Private Sub ObjT_EventTest(InStr As String) 'а сюда не попадаем
    MsgBox InStr
End Sub


Смотрел в отладчике COM объект — в функции EventTest количество соединений nConnections = 0
Значит EventTest должен быть как-то подключен.

Все то же самое для контрола работает, правда функция обработчик создается автоматом (при двойном щелчке по контролу).

Вопрос: как это сделать для объекта?
Re: COM Object Event
От: DarkSid Россия  
Дата: 18.05.04 10:26
Оценка:
Здравствуйте, Nik_Nik, Вы писали:

N_N>Здравствуйте.


N_N>Имеется COM объект (не контрол) ObjectTest.

N_N>В нем реализован Method — MethodTest и Event (Connection Point) — EventTest
N_N>Пишу в VB следующий код


N_N>
N_N>Dim ObjT As New ObjTest

N_N>Private Sub Command1_Click()
N_N>    Dim str1 As String
N_N>    str1 = "1234567890"
N_N>    ObjT.MethodTest str1, 10    'это работает нормально
N_N>End Sub

N_N>Private Sub ObjT_EventTest(InStr As String) 'а сюда не попадаем
N_N>    MsgBox InStr
N_N>End Sub
N_N>


N_N>Смотрел в отладчике COM объект — в функции EventTest количество соединений nConnections = 0

N_N>Значит EventTest должен быть как-то подключен.

N_N>Все то же самое для контрола работает, правда функция обработчик создается автоматом (при двойном щелчке по контролу).


N_N>Вопрос: как это сделать для объекта?



Private WithEvents ObjT As New ObjTest
Re[2]: COM Object Event
От: Nik_Nik  
Дата: 18.05.04 10:51
Оценка:
Здравствуйте, DarkSid, Вы писали:


DS>Private WithEvents ObjT As New ObjTest


Огромное спасибо. Помогло.
Правда New в этой строчке не должно быть.
Re[3]: COM Object Event
От: DarkSid Россия  
Дата: 18.05.04 10:57
Оценка:
Здравствуйте, Nik_Nik, Вы писали:

N_N>Здравствуйте, DarkSid, Вы писали:



DS>>Private WithEvents ObjT As New ObjTest


N_N>Огромное спасибо. Помогло.

N_N>Правда New в этой строчке не должно быть.
Это я машинально код скопирвал
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.