Bonjour,

J'ai une classe qui dérive d'un JFrame, je crée un menu, et je voudrais affecter une action à élément du menu (affichage d'un objet dans le container de la Frame) :

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
public class MainWindow extends JFrame{
 
    // constructeur
    public MainWindow() {
 
        // on récupère le conteneur de la fenêtre
        final Container conteneur = this.getContentPane();
        conteneur.setLayout(new FlowLayout());
 
        // le menu
        JMenuBar mb = new JMenuBar();
        this.setJMenuBar(mb);
     ......
        JMenu menu2 = new JMenu();
        menu2.setText("Outils");
        mb.add(menu2);
        JMenuItem mi21 = new JMenuItem();
        mi21.setText("Préparer une mission");
        menu2.add(mi21);        
        ActionListener action21 = new ActionListener() {
            public void actionPerformed(ActionEvent e) {                
                InterfacePrepaMission pm = new InterfacePrepaMission("Préparation de mission");
                conteneur.add(pm, BorderLayout.NORTH);
            }
        };
        mi21.addActionListener(action21);
.....
Mais quand je clique sur le menu, rien ne s'affiche, pourquoi ?
si je fais afficher l'objet directement à l'affichage de la frame et pas en réponse à la sélection dans le menu, il s'affiche bien.

Merci,

Nico