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

Goozisan 8 Messages postés mercredi 27 septembre 2006Date d'inscription 26 novembre 2006 Dernière intervention - 21 nov. 2006 à 22:44 - Dernière réponse : Goozisan 8 Messages postés mercredi 27 septembre 2006Date d'inscription 26 novembre 2006 Dernière intervention
- 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
Ombitious_Developper 2333 Messages postés samedi 28 février 2004Date d'inscription 26 juillet 2013 Dernière intervention - 22 nov. 2006 à 00:24
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 ();
}

Merci Ombitious_Developper 3

codes-sources a aidé 79 internautes ce mois-ci

Commenter la réponse de Ombitious_Developper
Meilleure réponse
Goozisan 8 Messages postés mercredi 27 septembre 2006Date d'inscription 26 novembre 2006 Dernière intervention - 26 nov. 2006 à 20:39
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

Merci Goozisan 3

codes-sources a aidé 79 internautes ce mois-ci

Commenter la réponse de Goozisan
Goozisan 8 Messages postés mercredi 27 septembre 2006Date d'inscription 26 novembre 2006 Dernière intervention - 22 nov. 2006 à 17:28
0
Merci
Merci pour ta réponse. Je vais essayer ça
Commenter la réponse de Goozisan
Goozisan 8 Messages postés mercredi 27 septembre 2006Date d'inscription 26 novembre 2006 Dernière intervention - 22 nov. 2006 à 17:51
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.