gallyhc
Messages postés386Date d'inscriptionsamedi 4 octobre 2008StatutMembreDernière intervention19 février 20182 28 oct. 2005 à 17:07
Bonjour,
Cela est normal, il faut mettre le nom de la form avec le label désirer. Ex : si ta form s'appel "Form1" et le Label s'appel "Label1", tu dois ecrire comme si dans ton module
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 200628 28 oct. 2005 à 17:34
1- Ne nomme pas ton argument "Label" !! Il va y avoir confusion avec le type "Label". Utilise LBL par exemple
Public Sub couleur(Lbl As Label)
Randomize
For j = 1 To 6
res = Int(9 * Rnd)
Form1.Lbl(j).BackColor = col(res)
Next
End Sub
P.S. : Inutile de tester le code ci-dessus, il n'est pas encore correct !!
2- Si Lbl est de type Label, c'est une étiquette de texte, d'accord ? or, quand tu mets Lbl(j), tu sous-entends que Lbl est une COLLECTION de quelquechose !! Pas pareil du tout, ça !!! Une solution est de transmettre en argument, non pas le nom de la collection de labels, mais la form elle-même, comme ceci :
Private Sub couleur(F As Form)
Dim Lbl As Label, j as long, res as long
Randomize
For j = 1 to 6
res = Int(9 * Rnd)
F.Label1(j).BackColor = col(res)
Next
End Sub
Alors, je n'ai pas testé ce bout de code, mais il doit être OK normalement !!