Bonjour,
J'ai plusieurs objets sur la forme (des TextBox), avec des noms comme TB_Led_1, TB_Led_2, TB_Led_3, ... TB_Led_12.
Je veux faire clignoter certains de ces TextBoxes, selon que l'utilisateur ait cliqué sur des boutons (chaque TextBox est associé à un bouton).
J'ai aussi un Timer, et je voudrais faire clignoter certaines des TextBox, selon que les boutons associés ont été cliqué ou pas.
Donc, plutôt que de faire 12 fois le même code, je voudrais faire quelque chose de plus propre.
J'ai donc essayé avec le CallByName :
Mais ça ne fonctionne pas (normal, sinon je ne serai pas là).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 For i As Integer = 1 To 12 If Bouton(i) Then If CallByName("TB_Led_" & i.ToString, "BackColor", CallType.Get) = Color.White Then CallByName("TB_Led_" & i.ToString, "BackColor", CallType.Set) = Color.Orange Else CallByName("TB_Led_" & i.ToString, "BackColor", CallType.Set) = Color.White End If End If Next
J'ai le message d'erreur suivant :
{"Le membre public 'BackColor' du type 'String' est introuvable."}
Pourtant, le site Microsoft m'indique :
Le CallByName fonction vous permet d’utiliser une chaîne pour spécifier une propriété ou méthode en cours d’exécution.
Or le BackColor est bien une propriété de l'objet TextBox TB_Led_1 (et de ses petits frères).
Merci d'avance pour votre aide
Partager