菜单(不是菜单项)加ActionListener为什么不行,应该加什么样的event listener,实现直接点击菜单完成命令,我的代码类似:
...
//菜单
JMenu exitMenu = new JMenu("Exit");
exitMenu.addActionListener(new ExitListener());
menuBar.add(exitMenu);
//为该菜单定制的listener
class ExitListener implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
System.exit(0);
}
}
...高手请赐教,感谢先!

解决方案 »

  1.   

    // "Tools"菜单项
    toolCheckBoxMenuItem.setState(true);
    toolCheckBoxMenuItem.setMnemonic('T');
    KeyStroke keyStrokeT = KeyStroke.getKeyStroke(KeyEvent.VK_T,
    Event.ALT_MASK);
    toolCheckBoxMenuItem.setAccelerator(keyStrokeT);
    toolCheckBoxMenuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {
    if (toolCheckBoxMenuItem.isSelected()) {
    VRPaintPanel.showInternalFrame(internalToolsFrame);
    // 显示原来的布局
    showOriginState();
    statusBar.setText("Tools Internal Frame Show.");
    } else {
    VRPaintPanel.hideInternalFrame(internalToolsFrame);
    // Canvas窗口最大化
    showPaintMaximum();
    statusBar.setText("Tools Internal Frame Hide.");
    }
    }
    });
      

  2.   

    可能是greenteanet兄台刚才没看清楚吧,给了个菜单项的实现,我问的是菜单上的实现,刚才我查了一下Doc文档,弄明白了,应该使用实现MenuListener接口的listener来处理,而不是ActionListener接口,菜单和菜单项以及按钮等在处理上还是不一样。不过还是要感谢一下