Bonjour,
Voila j'ai une classe dans laquelle je crée un menu contextuel.
Quand je clique droit le menu s'affiche bien mais quand je selectionne une action rien ne se passe.
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
32
  public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(TransF.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(TransF.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(TransF.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(TransF.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
 
        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new TransF().setVisible(true);
 
            }
        });
   }
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
public TransF() {
 
 
        initComponents();
        setIconImage(Toolkit.getDefaultToolkit().getImage(ModifPosit.class.getResource("icone.png")));
        //jTextArea2.add(new affibtnloncourt());
         jTextArea2.getDocument().addDocumentListener(new MyDocumentListener());
         jTextArea1.getDocument().addDocumentListener(new MyDocumentListener());
         formes = new JPopupMenu();
         sauve = new JMenu("Sauvegarde");
         formes.add(sauve);
         ouvrire = new JMenu("Ouvrire");
         formes.add(ouvrire);
         verslongs = new JMenuItem("Version longue");
         sauve.add(verslongs);
         verslongs.addActionListener(null);
         verscourts = new JMenuItem("Version courte");
         sauve.add(verscourts);
         verscourts.addActionListener(null);
         verslongo = new JMenuItem("Version longue");
         ouvrire.add(verslongo);
         verslongo.addActionListener(null);
         verscourto = new JMenuItem("Version courte");
         ouvrire.add(verscourto);
         verscourto.addActionListener(null);
         addMouseListener(new MouseAdapter() 
             {
                 public void mouseReleased(MouseEvent e)
                 {
                     if (e.isPopupTrigger())
                         formes.show(e.getComponent(), e.getX(), e.getY());
                 }
});
   }
    public void actionPerformed(ActionEvent e)
    {
        Object source = e.getSource();
            if (source == verslongo)
                {
                    FileDialog fDial=new FileDialog(this, "Ouvrir", FileDialog.LOAD);
                    fDial.show();
                    String fichierContenu= "";
                    try
                         {
                            RandomAccessFile raf = new RandomAccessFile(fDial.getDirectory() + fDial.getFile(), "r");
                            String ligne;
                                 while ( (ligne = raf.readLine()) != null )
                                      {
                                         fichierContenu += ligne + "\n";
                                       }
                                         jTextArea2.setText(fichierContenu);
                                         }
                    catch (IOException ev)
                            {
                            System.out.println("erreur dans: " + ev);
                            }
                }
            if (source == verscourto)
                {
                    FileDialog fDial=new FileDialog(this, "Ouvrir", FileDialog.LOAD);
                    fDial.show();
                    String fichierContenu= "";
                    try
                        {
                            RandomAccessFile raf = new RandomAccessFile(fDial.getDirectory() + fDial.getFile(), "r");
                            String ligne;
                            while ( (ligne = raf.readLine()) != null )
                                    {
                                    fichierContenu += ligne + "\n";
                                    }
                                    jTextArea1.setText(fichierContenu);
                        }
                    catch (IOException ev)
                        {
                        System.out.println("erreur dans: " + ev);
                        }
                }
            if (source == verscourts)
                {
                    Sauvegarde su = new Sauvegarde();
                    su.Sauvegarde(jTextArea1, null);
                }
            if (source == verslongs)
                {
                    Sauvegarde su = new Sauvegarde();
                    su.Sauvegarde(jTextArea2, null);
                }
    }
Si içi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 verslongs.addActionListener(null);
je met autre chose que null j'ai une erreur.