Afficher une TextArea quand on clique sur un bouton [Résolu]

Messages postés
8
Date d'inscription
mercredi 27 septembre 2006
Dernière intervention
26 novembre 2006
- - Dernière réponse : Goozisan
Messages postés
8
Date d'inscription
mercredi 27 septembre 2006
Dernière intervention
26 novembre 2006
- 26 nov. 2006 à 20:39
Bonjour,

N'ayant pas trouvé une explication à mon problème, je me permets donc de poster ma question.

En fait, j'essaie d'afficher une TextArea, en cliquant sur un bouton, dans un zone située au dessous d'un séparateur SplitPane. J'arrive déjà à afficher deux images en cliquant sur leur bouton respectif mais ça coince pour la zone texte. Voilà la partie du code qui pose problème:

--------------------------------------
public void actionPerformed(ActionEvent e)
    {

        Object o = e.getSource();

        if(o == btn1)
            derouleur.setViewportView(img1);

        else if(o == btn2)
            derouleur.setViewportView(img2);

        else if(o == btn3)
            derouleur.getViewport().add(zoneTexte);

    }
-------------------------
Si ça peut aider pour mieux comprendre, voici le code qui définit ma zone texte:

panScroll = new JPanel();
derouleur = new JScrollPane();
JTextArea zoneTexte = new JTextArea();

panScroll.setLayout(null);                                                 //Panel pour dérouleur
derouleur.setBounds(new Rectangle(393,208));           
zoneTexte.setText("Zone Texte");
panScroll.add(derouleur);

En fait quand j'écris derouleur.getViewport().add(zoneTexte); après panScroll.add(derouleur); ça affiche bien ma zone. Mais je n'arrive pas à créer l'évènement cliquer bouton -> afficher... Qu'en pensez-vous?

Merci pour vos conseils.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
2333
Date d'inscription
samedi 28 février 2004
Dernière intervention
26 juillet 2013
3
Merci
Salut:

1. Façon 1 :

zoneText = new JTextArea ();
zoneText.setVisible (false);
getContentPane ().add (zoneText);

// ...

if (e.getSource () == btn3)
    zoneText.setVisible (true);

2. Façon 2:

if (e.getSource () == btn3) {
    getContentPane ().add (zoneText);
    getContentPane ().validate ();
}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de Ombitious_Developper
Messages postés
8
Date d'inscription
mercredi 27 septembre 2006
Dernière intervention
26 novembre 2006
3
Merci
Problème résolu!
 
En fait s'était une erreur avec mon layout. Il n'était pas bien adapté à mon programme alors j'ai l'ai changé et tout marche

Merci pour votre aide en tout cas

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de Goozisan
Messages postés
8
Date d'inscription
mercredi 27 septembre 2006
Dernière intervention
26 novembre 2006
0
Merci
Merci pour ta réponse. Je vais essayer ça
Commenter la réponse de Goozisan
Messages postés
8
Date d'inscription
mercredi 27 septembre 2006
Dernière intervention
26 novembre 2006
0
Merci
J'ai adapté ta réponse à mon code, mais ça n'a pas marché. J'ai donc essayé différentes combinaisons, mais rien n'y fait...

Par exemple, j'ai remplacé getContentPane () par derouleur, mais aussi par panScroll, sans résultat.

Je m'y suis peut-être mal prise. En tout cas, quand j'essaie d'appuyer sur le bouton correspondant, ça affiche pleins de lignes dans la fenêtre de commande...
Commenter la réponse de Goozisan

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.