WithEvents avec Late Binding

Résolu
philheiz Messages postés 117 Date d'inscription mercredi 3 décembre 2003 Statut Membre Dernière intervention 11 octobre 2007 - 9 nov. 2004 à 10:27
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 - 20 févr. 2006 à 17:14
y-a-t'il moyen de profiter des procédures evenement (Events) d'une classe non référencé.

Par exemple:
dim oXls = CreateObject("Name.Class")

si la classe "Class" crée l'evenement "AfterUpdate", comment puis-je l'intercepter. "Class_AfterUpdate()" ne fonctionne evidemment pas.

Merci

2 réponses

philheiz Messages postés 117 Date d'inscription mercredi 3 décembre 2003 Statut Membre Dernière intervention 11 octobre 2007 1
9 nov. 2004 à 12:56
j'ai trouvé (pour ceux que ca interesse):

http://msdn.microsoft.com/msdnmag/issues/01/03/connpoints/

l'exemple suivant instancie le controle Microsoft Access Calendar (msacal70.ocx) de cette manière:

Dim WithEvents ctlobj As VBControlExtender

Private Sub cmd1_Click()
Dim ctlProgID as String
ctlProgID = "MSCAL.Calendar"
Set ctlobj = Controls.Add(ctlProgID, "myctl")
ctlobj.Visible = True
End Sub

Private Sub ctlobj_ObjectEvent(Info As EventInfo)
Dim i As Long
Dim numargs As Long
Dim msg As String

msg = ""

numargs = Info.EventParameters.Count

msg = msg & "Incoming event: " & Info.Name & vbCrLf
For i = 0 To numargs - 1 msg msg & "Arg n. " & CStr(i) & " name " & _
CStr(Info.EventParameters(i).Name & _
" value = " & CStr(Info.EventParameters(i).Value)) & _
vbCrLf
Next i

MsgBox msg, vbInformation, "Incoming event!"

End Sub
3
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
20 févr. 2006 à 17:14
Magnifique, merci beaucoup !

Ciaò
[mailto:madmatt_12@msn.com MadMatt]
www.madmatt.fr.st
0