Bonsoir,
Je suis novice dans le développement sous VB6 et, dans le cadre scolaire, je dois chercher un objet précis d'une collection et lire une valeur de l'objet en question.
Voici le code de la collection :
Et voici le code qui pose problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 Option Explicit ' Données privées. Private Mac As String Private Ip As String Private Name As String ' Methodes publiques Sub setMac(s As String) Mac = s End Sub Sub setIp(s As String) Ip = s End Sub Sub setName(s As String) Name = s End Sub Function getMac() As String getMac = Mac End Function Function getIp() As String getIp = Ip End Function Function getName() As String getName = Name End Function Private Sub Class_Initialize() Mac = "0:0:0:0:0:0" Ip = "0.0.0.0" Name = "Sans_Netbios" End Sub
J'ai bien sur déclarée ma collection comme ceci :Public MyCollection As New Collection
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim s As String Dim i As Integer Dim MachineCourante As machine Winsock1.GetData s s = UCase(s) If Left(s, 5) = "COUNT" Then Winsock1.SendData "Nombre de machines " & List1.ListCount End If If Left(s, 5) = "GETIP" Then If Len((Mid(s, 7, 17))) = 17 Then For i = 0 To List1.ListCount - 1 If (Mid(s, 7, 17)) = List1.List(i) Then Set MachineCourante = MyCollection.Item(i) MsgBox (MachineCourante.getIp) 'Winsock1.SendData "Nombre de machines " & MyCollection.count End If Next i Else MsgBox ("Erreur") End If End If End Sub
Je bloque sur le moyen de récupérer un objet de la collection et de lire la valeur IP par un accesseur getIP.
Si quelqu'un peut m'éclairer
Merci
Partager