Etienne BAUDOUX

Forum sur les projets de Etienne BAUDOUX


faire une boucle sur des objets [RESOLU]

avatar
Gixxie
Nouveau
Nouveau

Masculin Nombre de messages : 41
Date d'inscription : 16/05/2014

faire une boucle sur des objets [RESOLU] Empty faire une boucle sur des objets [RESOLU]

Message par Gixxie le Sam 31 Mai 2014 - 10:19

Bonjour,

Encore une question !
voilà le problème:
J'ai une quinzaine d'étiquettes dont je voudrais changer la couleur suivant une condition.
comme je suis feignant, je voudrais faire une boucle qui appelle les étiquettes une par une et fait le changement.

par exemple
pour N=1 à 15
Me.label%(VARIABLE=N)%.BackColor = Variables.Fenêtre2.label4.BackColor

au lieu de me peler tous les contrôles un par un:

Me.label1.BackColor = Variables.Fenêtre2.label4.BackColor
Me.label2.BackColor = Variables.Fenêtre2.label4.BackColor
Me.label3.BackColor = Variables.Fenêtre2.label4.BackColor
...etc.

bien sûr il me renvoie une erreur.
On a peut-être pas le droit de mettre des variables textes à l'intérieur des noms d'objets?
Si jamais c'est possible, quelle est le bon libellé où la bonne méthode?
Je précise que je n'y connais rien en VB, mais vous l'aurez deviné vu ce genre de tâtonnements Smile
merci de vos lumières


Dernière édition par Gixxie le Sam 31 Mai 2014 - 19:25, édité 1 fois
lereparateurdepc
lereparateurdepc


Masculin Nombre de messages : 5601
Age : 26
Localisation : Calvados
Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
Humeur : toujours cool
Date d'inscription : 31/01/2010

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par lereparateurdepc le Sam 31 Mai 2014 - 11:08

re,

La couleur BackColor est-elle la même pour tous les label ?

Cordialement,
Le réparateur de PC



Modérateur & Administrateur du forum
Merci de contacter les membres par MP ou mail que pour "urgences". Le forum est fait pour ça. Merci

@ Contact : franleboss@gmail.com  Smile
Arrow  Visitez mon site : désolé l'hébergeur à fermé Sad

Ma chaine tutube : https://www.youtube.com/channel/UC7iU59NNAHz-tW5wqcgONHA


faire une boucle sur des objets [RESOLU] Wp_20110faire une boucle sur des objets [RESOLU] 10_32010faire une boucle sur des objets [RESOLU] Wp_20111faire une boucle sur des objets [RESOLU] 07_sig10
avatar
Gixxie
Nouveau
Nouveau

Masculin Nombre de messages : 41
Date d'inscription : 16/05/2014

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par Gixxie le Sam 31 Mai 2014 - 11:40

bjr,

Non bien sûr  Cool 
en fait je comptais mettre une condition aussi sur Variables.Fenêtre2.label4.BackColor
quand on aime on ne compte pas !!
lereparateurdepc
lereparateurdepc


Masculin Nombre de messages : 5601
Age : 26
Localisation : Calvados
Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
Humeur : toujours cool
Date d'inscription : 31/01/2010

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par lereparateurdepc le Sam 31 Mai 2014 - 11:42

re,

Peux-tu réexpliquer plus en détails ce que tu souhaite faire car là je ne vois pas trop le truc .. Sad

Cordialement,
Le réparateur de PC



Modérateur & Administrateur du forum
Merci de contacter les membres par MP ou mail que pour "urgences". Le forum est fait pour ça. Merci

@ Contact : franleboss@gmail.com  Smile
Arrow  Visitez mon site : désolé l'hébergeur à fermé Sad

Ma chaine tutube : https://www.youtube.com/channel/UC7iU59NNAHz-tW5wqcgONHA


faire une boucle sur des objets [RESOLU] Wp_20110faire une boucle sur des objets [RESOLU] 10_32010faire une boucle sur des objets [RESOLU] Wp_20111faire une boucle sur des objets [RESOLU] 07_sig10
avatar
Gixxie
Nouveau
Nouveau

Masculin Nombre de messages : 41
Date d'inscription : 16/05/2014

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par Gixxie le Sam 31 Mai 2014 - 12:48

re,

Je vais essayer d'expliquer dans le détail. voici la fenêtre:

faire une boucle sur des objets [RESOLU] Belt10

c'est pour un jeu, pas de panique Smile
quand on appuie sur le bouton à gauche, cela doit modifier la couleur des étiquettes de la colonne d'étiquettes (référencé 13 étiquettes (car c'est le cas, on voit mal mais ce sont 13 étiquettes accolées)). appelons la colonne C.
appelons colonne B la liste de grandes étiquettes du milieu avec les couleurs et les textes à l'intérieur.
en fait imagine que l'on clique la première fois sur le troisième bouton en partant du haut.
Alors la première étiquette de la colonne C doit prendre la couleur de la troisième étiquette de la colonne B (vert foncé)
Puis quand on clique la deuxième fois (par exemple sur le bouton six) alors la deuxième étiquette de la colonne C doit prendre la couleur de la sixième étiquette de la colonne B (rouge)
etc...
quand on clique pour la N-ième fois sur le P-iéme bouton, alors la N-ième étiquette de la colonne C doit prendre la couleur de la P-ième étiquette de la colonne B

il faut savoir aussi que à chaque fois que j'appuie sur un bouton cela ajoute un élément à la listbox à droite (cette liste va me servir pour plus tard)

sur le screenshot, on a par exemple appuyé 2 fois sur le bouton 1, puis une fois sur le bouton 2, puis une fois sur le bouton 1.

donc il me semblait que le plus simple était peut faire un incrément N
N=1
Je clique sur le bouton  numéro P
ça récupère la couleur de l'étiquette numéro P de la colonne B
Je copie cette couleur sur l'étiquette numéro N de la colonne C

deuxième clic sur un bouton --> N=N+1, et on recommence.

C'est pour ça que j'ai besoin de pouvoir sélectionner un objet (en l'occurrence une étiquette) avec un nom d'objets qui contient une part variable.
un peu comme ça : Me.label%(VARIABLE=N)%.BackColor


Voilà j'espère que je me suis bien expliqué, c'est un peu compliqué Smile
Il y a peut-être moyen bien sûr de faire complètement différemment pour le même résultat. Je n'ai peut-être pas vu, je me suis un peu focalisé là-dessus

c'est aussi parce que, bien que ce soit un cas particulier ici, j'ai déjà été confronté déjà plusieurs fois au besoin de faire des boucles avec des noms d'objets qui varieraient fonction de l'indice de la boucle, d'où ma question initiale.
G
lereparateurdepc
lereparateurdepc


Masculin Nombre de messages : 5601
Age : 26
Localisation : Calvados
Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
Humeur : toujours cool
Date d'inscription : 31/01/2010

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par lereparateurdepc le Sam 31 Mai 2014 - 13:05

re,

En gros, les boutons et la description (col B) sont liés ?
La colonne C est prédéfinie ? Les 13 labels sont bien déjà tous créés ?

J'ai cherché un code qui liste tous les labels mais là ce n'est plus pareil .....

Dans ton cas, remplace la colonne C par un ListBox.
A chaque clic sur un des boutons, un incrémente de 1 une même variable.
Ensuite, tu ajoute un élément à la ListBox à la position de ta variable d'incrémentation.

EDIT : oublis :
Tu crées une variable qui contiendra la couleur voulu.
Tu met dans cette variable la couleur (attention pas simplement "Red" ou autre mais du code VB : System.Drawing.Color.Red) en question dans tous les boutons.

Ex: Je clique sur le but1 : je fait +1 à la variable increm et je met la couleur voulu dans la variable couleur. J'ajoute ensuite l'item.

EDIT2 mode gros boulet ....... Le BackColor d'un listbox est commun à tous les items .................. Je cherche autre chose désolé Sad

Cordialement,
Le réparateur de PC



Modérateur & Administrateur du forum
Merci de contacter les membres par MP ou mail que pour "urgences". Le forum est fait pour ça. Merci

@ Contact : franleboss@gmail.com  Smile
Arrow  Visitez mon site : désolé l'hébergeur à fermé Sad

Ma chaine tutube : https://www.youtube.com/channel/UC7iU59NNAHz-tW5wqcgONHA


faire une boucle sur des objets [RESOLU] Wp_20110faire une boucle sur des objets [RESOLU] 10_32010faire une boucle sur des objets [RESOLU] Wp_20111faire une boucle sur des objets [RESOLU] 07_sig10
avatar
Gixxie
Nouveau
Nouveau

Masculin Nombre de messages : 41
Date d'inscription : 16/05/2014

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par Gixxie le Sam 31 Mai 2014 - 13:50

@lereparateurdepc a écrit:
En gros, les boutons et la description (col B) sont liés ?
oui
La colonne C est prédéfinie ? Les 13 labels sont bien déjà tous créés ?
oui ils sont créés.
.........................

........................ Je cherche autre chose désolé Sad

Cordialement,
Le réparateur de PC
re,

j'en conclus donc que modifier les noms d'objets avec un truc du genre : Me.label%(VARIABLE=N)%.BackColor neva pas aller de toutes façons ?

oui la listbox avait été mon premier essai.
je pense à un truc, la couleur pourrait être celle du bouton (et non de l'étiquette colonne B). Il suffit de la définir en "background colour".comme il y a une image par dessus on s'en fout. Cela simplifierait déjà la récupération de la couleur car ce serait directement celle du bouton cliqué.
Reste le problème de la sélection de l'étiquette de la colonne C... :

N=1
Je clique sur le bouton  numéro P
ça récupère la couleur de l'étiquette numéro P du bouton de la colonne B
Je copie cette couleur sur l'étiquette numéro N de la colonne C

deuxième clic sur un bouton --> N=N+1, et on recommence.  

Merci de ton temps, c'est sympa.
G
avatar
Gixxie
Nouveau
Nouveau

Masculin Nombre de messages : 41
Date d'inscription : 16/05/2014

faire une boucle sur des objets [RESOLU] Empty listbox

Message par Gixxie le Sam 31 Mai 2014 - 14:54

re,

à tout hasard.
je viens de voir un truc dans les propriétés d'une listbox:
drawmode --> ownerdrawvariable où l'utilisateur peindrait chaque élément...
C'est bien, mais aucune idée comment ça marche Smile
G
avatar
Gixxie
Nouveau
Nouveau

Masculin Nombre de messages : 41
Date d'inscription : 16/05/2014

faire une boucle sur des objets [RESOLU] Empty une solution

Message par Gixxie le Sam 31 Mai 2014 - 17:22

bonsoir,

bon, j'ai finalement trouvé un truc qui marche.
je crée une variable tableau avec la liste des couleurs des 13 étiquettes (un tableau d'objets en somme)
Ensuite si je veux boucler sur les étiquettes il suffit de boucler sur leur index dans la variable.
Bons évidemment il faut initialiser la variable tableau. mais bon, il suffit de le faire une fois...
G
polien
polien


Masculin Nombre de messages : 2992
Age : 22
Localisation : Bouches du Rhones
Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
Humeur : Je commence tout mais ne finit rien :P
Date d'inscription : 19/05/2011

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par polien le Sam 31 Mai 2014 - 17:34

Bonsoir,

Si ça marche, est ce que tu peut éditer ton premier sujet pour mettre [RESOLU] dans le titre stp Wink


Contenu sponsorisé

faire une boucle sur des objets [RESOLU] Empty Re: faire une boucle sur des objets [RESOLU]

Message par Contenu sponsorisé


    La date/heure actuelle est Mer 24 Juil 2019 - 6:58