Bonjour, Je ne sait pas si ma question et très claire je vais donc la détailler.
Pour, l'instant j'ai une class FennetreVar qui contient une JMenuBar :
Après je défini une Class Pannel par Panel que j'aurait a utiliser pour mes différente interface:
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
25
26
27
28
29
30
31 public class FenetreVar extends JFrame implements ActionListener { /** Constructeur */ public FenetreVar() { super(); //Appel du constructeur de JFrame; super("titre") pour mettre le titre this.setTitle("C&CAO"); //titre de ma fenêtre this.setSize(1100,800); //taille de la fenêtre this.setResizable(false); // redimensionnement--> impossible de redimensionner this.setLocationRelativeTo(null); //Placement de la fenetre ---> au milieu de l'écran this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//Si on clique sur la croix rouge --> ferme le programme this.setJMenuBar(this.creationBarreDeMenu()); //Ajout d'une barre de menu à ma fenêtre, donc EN HAUT this.setVisible(true); //Affiche la fenetre } public JMenuBar creationBarreDeMenu() { // code menu } public void actionPerformed(ActionEvent e) { String action = e.getActionCommand(); // Menu : Menu if (action.equals("Menu X")) { FenetreVar.add(PannelX()); } } }
Se que je veut faire c'est que lors de la sélection d'un menu dans la JMenuBar, le panel correspondant soit appeler.
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 public class PannelX extends Pannel { public PannelX() { /************************ * Déclaration du pannel ************************/ JPanel panX = new JPanel();//Instanciation d'un objet JPanel panX.setBackground(Color.WHITE);//Définition de sa couleur de fond /****************************** * Définition du GridbagLayout ******************************/ panX.setLayout(new GridBagLayout());// On ajoute un gridbagLauout au panel GridBagConstraints gc = new GridBagConstraints(); gc.weightx=3; // weightx définit le nombre de cases en abscisse gc.weighty=8; // weighty définit le nombre de cases en ordonnée } }
Comment je peut réaliser cela ??
Merci
Partager