2013-05-21 32 views
1

所以,我已經實現了JMenu組件的匿名動作偵聽器,所以我很想知道JMenu是否可以在JMenu中使用JMenuItems,例如JMenu。 。 出口?Java JMenu actionPerformed不起作用

@Override 
    public void menuBarItemExit(JMenuBar menubar) { 
     exitMenuItem = new JMenu("Exit"); 
     exitMenuItem.addActionListener(new ActionListener() { 

      @Override 
      public void actionPerformed(ActionEvent e) { 
       System.exit(0); 
      } 
     }); 
     menubar.add(exitMenuItem); 
    } 

回答

4

使用的MenuListener而不是ActionListener

exitMenuItem.addMenuListener(new MenuListener() { 
    @Override 
    public void menuSelected(MenuEvent e) { 
     System.exit(0); 
    } 

    @Override 
    public void menuDeselected(MenuEvent e) { 
    } 

    @Override 
    public void menuCanceled(MenuEvent e) { 
    } 
}); 

從甲骨文:JMenu ignores ActionEvent