Remove un composant, qui est renomer

Résolu
amine1234Z Messages postés 134 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 31 mai 2010 - 11 avril 2010 à 18:12
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 15 avril 2010 à 17:36
bonjour
je déclare une JLabel comme suite
     
description_line = new javax.swing.JLabel("Mon Label");
        description_line.setName("NouveauNom");


Je me demande est ce que je peux enlever cette label de mon JPanel,
J'ai essayé
Panel.remove(description_line);

Mais ça na pas marché, puisque j'ai remplacer le description_line par "NouveauNom"

En plus je pense qu'on peu pas faire
Panel.remove(NouveauNom);

parce que c'est valide qu'au niveau exécution

Quelqu'un a une idée.

MERCI d'Avance


% Mauvais Sens %

5 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
11 avril 2010 à 18:20
Salut,

Peu importe la description du label : c'est pas l'instance du JLabel qu'il faut le supprimer du panel :
Label test = new JLabel("Label test");
JPanel panneau = new JPanel();
panneau.add(test);
test.setName("toto");
panneau.remove(test);


Ce qui correspond à ce que tu as fait.

ça na pas marché


Qu'est-ce qui n'a pas marché ? Es-tu sûr de l'avoir fait sur le bon JPanel ?
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
15 avril 2010 à 17:36
Salut,

Après il te faut parcourir la collection de composant de ton panel, ou stocker les instances dans une Collection histoire de n'avoir qu'une seule variable contenant la liste de tout les composants.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
3
amine1234Z Messages postés 134 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 31 mai 2010 4
15 avril 2010 à 12:30
Bonjour,
et merci pour la Réponse DARKSIDIOUS

Oui vous avez Grave Raison,je doit écrire,[b] ça a marché
/b
Mais seulement dans ce cas là,

Supposons ça:
JLabel test;
JPanel panneau = new JPanel();

test = new JLabel("Label1");
test.setName("toto");
Panel.add(test);

test = new JLabel("Label2");
test.setName("titi");
Panel.add(test);

Panel.remove(test);


pour ce code, il me supprimer la deuxième label, pourtant moi, je veux spécifier la quelle a supprimer.

MERCI.

% Mauvais Sens %
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
15 avril 2010 à 12:52
Salut,

Forcément : tu as une variable test dans laquelle tu attribut un label (jusque là tout est normal), puis tu réutilise ta variable test dans laquelle tu place l'instance du deuxième label (donc test pointe sur le deuxième label et plus le premier).

Du coup, lorsque tu enlève ta variable test de ton panel, c'est le deuxième panel qui est supprimé.

Il te suffit d'utiliser 2 variables :
JLabel testLabel1;
JPanel panneau = new JPanel();

testLabel1 = new JLabel("Label1");
testLabel1.setName("toto");
Panel.add(testLabel1);

JLabel testLabel2;
testLabel2 = new JLabel("Label2");
testLabel2.setName("titi");
Panel.add(testLabel2);

Panel.remove(testLabel1);

______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
amine1234Z Messages postés 134 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 31 mai 2010 4
15 avril 2010 à 17:25
Bonjour,
Merci, pour l'explication

Mais essayant de voir l'extrême( d'utiliser une seul variable, et de supprimer plusieurs de ces instances)

Est ce que je ne peux pas pointer cette variable test, sur sa premier instance, afin de la supprimer?
en gardant la deuxième.

Thanks
% Mauvais Sens %
0
Rejoignez-nous