Mors Tyvärr så går det inte att göra på det sättet. Egen klass, array och withevents
Jag har gjort en klass som har events.
Jag vill deklarera klassen som en array för att komma åt eventsen, men det går inte. Någon som vet hur jag ska göra?
Vill ha typ:
dim withevents minklass(20) as CTransBufferSv: Egen klass, array och withevents
Du kan istället ha en klass som har hand om själva Eventen som du anropar från array klasserna med en vanliga metoder. Ett väldigt lätt exempel följer.
Form:
<code>
Option Explicit
Private WithEvents x As Class1
Private y(10) As Class2
Private Sub Command1_Click()
Dim i As Integer
Set x = New Class1
For i = 0 To 10
Set y(i) = New Class2
y(i).NewClass x, i
Next
For i = 0 To 10
y(i).Start_Event
Next i
End Sub
Private Sub x_Startar(ByVal Index As Long)
Text1.Text = Text1.Text & "Index: " & Index & vbCrLf
End Sub
</code>
Class 1
<code>
Option Explicit
Public Event Startar(ByVal Index As Long)
Public Sub Start(ByVal Index As Integer)
RaiseEvent Startar(Index)
End Sub
</code>
Class2
<code>
Option Explicit
Private mIndex As Integer
Private mParent As Class1
Public Sub NewClass(ByVal Parent As Class1, Index As Integer)
mIndex = Index
Set mParent = Parent
End Sub
Public Sub Start_Event()
mParent.Start mIndex
End Sub
</code>