Aucune action dans Menu contextuel
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:
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:
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:
verslongs.addActionListener(null);
je met autre chose que null j'ai une erreur.