Ce sujet est résolu.
12 | |||
Auteur | Messages | ||
---|---|---|---|
stracoma | #1 Posté le 16/5/2017 à 00:06:38 | ||
Apprentissage programmation pour le plaisir | Bonsoir à vous tous. J'ai besoin de votre aide pour résoudre un problème. J'ai 8 labels: label_1, label_2, .... label_8. je veux, par une seule instruction changer la couleur du texte des labels. une chose comme(mais qui ne marche pas): for each lbl as label in me lbl.foreground=color.red next Merci SVP patience avec moi car neurones > 50 ans | ||
didier18 | #2 Posté le 16/5/2017 à 01:17:11 | ||
Bonsoir stracoma Tu peux faire par exemple :
Le seul impératif est d'avoir au préalable créé un tableau de tes "lbl" et d'avoir mis leur numéro dans le "Tag"... NB : Tu peux agir de la même façon sur des boutons, des TextBox etc... Bonne soirée. | |||
vuott | #3 Posté le 16/5/2017 à 02:56:56 | ||
Ne cedere ineluctabili possimus | Une autre hypothèse pourrait être:
« Vita non suavis esse potest, nec Mors amara. » | ||
spheris | #4 Posté le 16/5/2017 à 10:28:19 | ||
Une solution en utilisant les TAG de chaque lable non? Stracoma, modifie ta signature aPPrentissage et non aPrentissage | |||
Flachy Joe | #5 Posté le 16/5/2017 à 14:18:07 | ||
Iguane : Il Gambas Uniquement pour Activer ses NEurones | Salut, En filtrant les noms, (ou les tags ou autre) ce qui permet de choisir facilement lesquels on modifie si on ne veux pas les changer tous :
Flachy Joe | ||
Patrick | #6 Posté le 16/5/2017 à 15:52:29 | ||
Bonjour, Sinon une autre idée :
Je viens de m’apercevoir que j'ai utilisé Background, vous rectifierez vous mêmes. | |||
stracoma | #7 Posté le 17/5/2017 à 10:47:54 | ||
Apprentissage programmation pour le plaisir | Bonjour et merci à vous pour vos réponses. Je retient le code de Flachy Joe car il évite d'initialiser un à un tous les labels; par contre il présente un défaut de taille: obj n’accepte pas toutes les propriétés des labels. obj.Foreground marche mais obj.Text ne marche pas SVP patience avec moi car neurones > 50 ans | ||
vuott | #8 Posté le 17/5/2017 à 13:58:46 | ||
Ne cedere ineluctabili possimus | Le code, j'ai proposé, n'a pas besoin d'initialiser un à un toutes les Label: Label1.Text = Label1.Name etc.. était simplement un exemple. « Vita non suavis esse potest, nec Mors amara. » | ||
stracoma | #9 Posté le 17/5/2017 à 14:07:25 | ||
Apprentissage programmation pour le plaisir | Effectivement, vuott, votre code fait l'affaire: ce code marche: Dim obj As Control Dim ob As Object For Each ob In Me.Children If Object.Type(ob) = "Label" Then ob.Foreground = Color.Red ob.Text = "Bonjour" Endif Next Merci à vous SVP patience avec moi car neurones > 50 ans | ||
Flachy Joe | #10 Posté le 17/5/2017 à 16:14:40 | ||
Iguane : Il Gambas Uniquement pour Activer ses NEurones | stracoma : effectivement, avec obj défini comme control tu n'as accès qu'aux propriétés communes à tous les contrôles. Mais il suffit de faire
pour que mon code fonctionne avec n'importe quelle propriété. Du coup tu n'es pas limité à un type de contrôle, tu peux changer d'un coup le text d'une textBox, d'un label et d'une combobox et ne pas toucher aux propriétés d'un autre label par exemple. Flachy Joe | ||
stracoma | #11 Posté le 17/5/2017 à 16:42:34 | ||
Apprentissage programmation pour le plaisir | Merci Flachy Joe, ton message m'a appris des choses. Clair eau de roche SVP patience avec moi car neurones > 50 ans | ||
Patrick | #12 Posté le 22/5/2017 à 14:06:21 | ||
Bonjour, Cette solution fonctionne bien si tous vos contrôles se trouvent dans le même container, mais si vous faites comme moi et utilisez des containers pour ranger vos contrôles .... Ça ne fonctionne plus. | |||
Flachy Joe | #13 Posté le 22/5/2017 à 21:48:03 | ||
Iguane : Il Gambas Uniquement pour Activer ses NEurones | Salut Patrick, Dans ce cas il suffit de faire
Flachy Joe | ||
Patrick | #14 Posté le 23/5/2017 à 15:43:05 | ||
C'est sympa, on peut même récupérer les objets d'une classe et à priori d'autre choses aussi. A creuser Merci Flachy Joe. | |||
stracoma | #15 Posté le 28/5/2017 à 20:50:26 | ||
Apprentissage programmation pour le plaisir | Bonjour Et pourquoi ce code ne marche pas
Je crois que dans ce code, "For Each" parcourt tous les objets de la fenêtre, alors que moi j'ai spécifié que obj est de type Label SVP patience avec moi car neurones > 50 ans | ||
12 |