exit.addMouseListener(new MouseAdapter(){
            public void mouseClicked(MouseEvent e){
                System.exit(0);
            }
        });我在menuBar的1个Menu中添加了"exit"的MenuItem选项   并且加上了上述的监听器   为何鼠标点击之后没反映的?     

解决方案 »

  1.   

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;public class JMenuBarTest
    {
    public static void main(String[] args)
    {
    JMenuBarTestJFrame frame=new JMenuBarTestJFrame();
    frame.show();
    }
    }class JMenuBarTestJFrame extends JFrame
    {
    JMenuBar menuBar;
    JMenu fileMenu;
    JMenuItem exit;

    public JMenuBarTestJFrame()
    {
    setSize(400,300);
    setTitle("演示");
    setLocation(300,300); menuBar=new JMenuBar();
    fileMenu=new JMenu("File"); actionDemoExit close=new actionDemoExit("exit"); fileMenu.add(close);
    menuBar.add(fileMenu);
    setJMenuBar(menuBar);
    }

    private class actionDemoExit extends AbstractAction
    {
    public actionDemoExit(String name)
    {
    putValue(Action.NAME,name);
    }

    public void actionPerformed(ActionEvent event)
    {
    System.exit(0);
    }
    }
    }
      

  2.   

    因为按钮上的动作一般只有点击,所以用阿布AbstractAction就可以了,我在button上用过mouselistener可以,菜单上没试过