Gestion des événements exposés sur une classe .NET via COM dans VB6Gestion des événements exposés sur une classe .NET via COM dans VB6
Mon .NET test (classe libary enregistré pour Interop dans les paramètres du compilateur) Code:
Imports System.Runtime.InteropServices
<InterfaceType(ComInterfaceType.InterfaceIsIDispatch), ComVisible(True)> _
Public Interface MyEventInterface
<DispId(1)> Event Exploded(ByVal Text As String)
<DispId(2)> Sub PushRedButton()
End Interface
<ClassInterface(ClassInterfaceType.None)> _
Public Class EventTest
Implements MyEventInterface
Public Event Exploded(ByVal Text As String) Implements MyEventInterface.Exploded
Public Sub PushRedButton() Implements MyEventInterface.PushRedButton
RaiseEvent Exploded("Bang")
End Sub
End Class
Code Mon application VB6 test winForms (qui fait référence à la libary de classe ci-dessus):
Public ct As New ComTest1.EventTest
Private Sub Command1_Click()
ct.add_Exploded (ExplodedHandler)
ct.PushRedButton
ct.remove_Exploded (ExplodedHandler)
End Sub
Private Sub ExplodedHandler(ByVal Text As String)
MsgBox Text
End Sub
specifially Je ne sais pas comment mettre en place le gestionnaire dans VB6 l'erreur de compilation que je reçois est « Argument pas choisi ional » sur cette ligne dans le VB6:
ct.add_Exploded (ExplodedHandler)
Où est votre add_Exploded déclarée? – volody
Les attributs COM l'ont créé. c'est-à-dire dans VB6, intellisense add_ et remove_ sont présents en raison de l'interface Idispatch je crois? – PeanutPower