Changer de JPanel par JMenu
Bonjour,
Par un Menu, je cherche à pourvoir changer de JPanel.
Code:
1 2 3 4 5
| public class Main {
public static void main(String[] args){
Fenetre fen = new Fenetre();
}
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| public class Fenetre extends JFrame {
private JMenuBar menuBar = new JMenuBar();
private JMenu M1 = new JMenu("Menu");
private JMenuItem M1_1 = new JMenuItem("Menu1");
private JMenuItem M1_2 = new JMenuItem("Menu2");
private JMenuItem M1_3 = new JMenuItem("Fermer");
public Fenetre(){
this.setTitle("Menu");
this.setSize(700, 700);
this.setResizable(false);
this.setUndecorated(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.M1.add(M1_1);
this.M1.add(M1_2);
this.M1.addSeparator();
M1_3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent arg0) {System.exit(0);}});
this.M1.add(M1_3);
this.menuBar.add(M1);
this.setJMenuBar(menuBar);
this.setContentPane(new PanneauM1_1());
this.setVisible(true);
}
} |
Code:
1 2 3 4 5 6 7 8
| public class PanneauM1_1 extends JPanel {
public void paintComponent(Graphics g){
Font font = new Font("Courier", Font.BOLD, 20);
g.setFont(font);
g.setColor(Color.blue);
g.drawString("Menu 1", 10, 20);
}
} |
Code:
1 2 3 4 5 6 7 8
| public class PanneauM1_2 extends JPanel {
public void paintComponent(Graphics g){
Font font = new Font("Courier", Font.BOLD, 20);
g.setFont(font);
g.setColor(Color.red);
g.drawString("Menu 2", 10, 20);
}
} |
Quand je clic sur Menu_1 je veux afficher le JPanel PanneauM1_1 et quand je clic sur Menu_2 je veux afficher le JPanel PanneauM1_2.
Je suppose qu'il faut ajouter un addActionListener dans la class Fenetre, mais je ne comprend pas comment ...
Si quelqu'un peut m'aider, par avance merci.