IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Interfaces Graphiques en Java Discussion :

Changer de contentPane dans ActionListener


Sujet :

Interfaces Graphiques en Java

  1. #1
    Membre actif
    Homme Profil pro
    �tudiant
    Inscrit en
    Novembre 2015
    Messages
    58
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 58
    Par d�faut Changer de contentPane dans ActionListener
    Voil� le contexte :

    J'ai ma frame avec un panel en tant que contentpane, � cot� j'ai cr�er un autre classe panel et j'aimerais que mon appli affiche ce panel apr�s appuie d'un bouton. �a � l'air simple mais �a fait des heures que je trouve pas! (et je suis paum� entre tout les validate revalidate paint repaint update etc...)

    Merci d'avance!

  2. #2
    Membre chevronn�
    Homme Profil pro
    Conseil - Consultant en syst�mes d'information
    Inscrit en
    Juillet 2013
    Messages
    269
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Conseil - Consultant en syst�mes d'information
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 269
    Par d�faut
    Bonjour,

    il faudrait que tu affiches ton code pour voir ce qui ne va pas.

  3. #3
    Membre actif
    Homme Profil pro
    �tudiant
    Inscrit en
    Novembre 2015
    Messages
    58
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 58
    Par d�faut
    Alors voila mon actionListener:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	class pokedexChoice implements ActionListener{
    		public void actionPerformed(ActionEvent e) {
    			removeAll();
    			validate();
     
    			TableDex TD = new TableDex(1);
    			setContentPane(TD.getContentPane());
     
    			revalidate();
    			repaint();
    		}
    TableDex est ma JFrame que j'essaie d'afficher.

  4. #4
    Membre confirm�
    Homme Profil pro
    Alternance
    Inscrit en
    F�vrier 2019
    Messages
    59
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activit� : Alternance
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : F�vrier 2019
    Messages : 59
    Par d�faut
    Pour faire ce que tu voudrais il faut que tu ajoutes un panel � ton contentpane.

    Il faut pour cela que tes autres classe extends de JPanel. Ensuite avec ton bouton il faut dire � ton contentpane ce qu'il doit afficher.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    class Frame extends JFrame{
        public static JPanel panCentrale;
        public Frame(){
            // Code de l’apparence de ta fenêtre
            JButton btn = new JButton();
            btn.addActionListener(new pokedexChoice); // action du bouton
            panCentrale = new JPanel();
            getcontentPane.add(panCentrale);
        }
    }
     
     
    class TaClass extends JPanel{
           // CODE
    }
     
     
    class pokedexChoice implements ActionListener{
    		public void actionPerformed(ActionEvent e) {
                          Frame.panCentrale.add(new TaClass());
                          Frame.panCentrale.revalidate();
                    }
    }
    Je m'explique ta fen�tre principale dans une application ne sera pas appel� plusieurs fois en m�me temps normalement. C'est pour cela que je cr�e un panel en static les propri�t�s static sont des �l�ments commun � toutes les class instanci�. Donc gr�ce au mot clef static on peut appeler le panel sans instancier la class -> Frame.panCentrale. Apres cela on lui dit qu'il doit avoir ton nouveau panel et on l'actualise.

    J�esp�re t'avoir aid�.

  5. #5
    Membre exp�riment�
    Avatar de anadoncamille
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juillet 2007
    Messages
    395
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 395
    Billets dans le blog
    1
    Par d�faut
    Est-ce que �a marche ? La discussion est-elle r�solue ?

Discussions similaires

  1. Changer taille police dans un JMenu
    Par TomPouce05 dans le forum Composants
    R�ponses: 11
    Dernier message: 14/09/2015, 10h13
  2. Changer des caract�ristique dans la DB
    Par tripper.dim dans le forum SQL
    R�ponses: 4
    Dernier message: 04/09/2004, 23h31
  3. Comment changer des mots dans un fichier?
    Par ptitbonum dans le forum Linux
    R�ponses: 5
    Dernier message: 07/04/2004, 23h42
  4. [Debutant(e)] changer la langue dans eclipse
    Par omega dans le forum Eclipse Java
    R�ponses: 6
    Dernier message: 16/03/2004, 16h47
  5. [MFC] Changer le texte dans la barre de statut
    Par karl3i dans le forum MFC
    R�ponses: 2
    Dernier message: 13/02/2004, 13h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo