想做一个java的 计事本 一样的窗体  现在问题在于 我如何获得菜单栏上点击的事件以及处理的方法     
 贴个代码出来谢谢

解决方案 »

  1.   

    Swing中的事件问题.....这个在IDE中直接双击就自动产生代码了...
      

  2.   

    就是JMenu的事件吧,有个现成的
    package test;import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;import javax.swing.JComboBox;
    import javax.swing.JDialog;
    import javax.swing.JFrame;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JMenuItem;
    import javax.swing.JPanel;
    import javax.swing.JTextField;public class TestJFrame extends JFrame implements ActionListener { private static final long serialVersionUID = -362233428598274611L; private JMenuItem mi = null; public static void main(String[] args) {
    new TestJFrame();
    } public TestJFrame() {
    init();
    } private void init() {
    JMenuBar menuBar = new JMenuBar();
    JMenu menu = new JMenu("Menu");
    menuBar.add(menu);
    JMenu menu2 = new JMenu("Menu2");
    menuBar.add(menu2);
    mi = new JMenuItem("test");
    mi.addActionListener(this);
    menu.add(mi);
    this.setJMenuBar(menuBar);
    this.getContentPane().setLayout(new BorderLayout());
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setSize(new Dimension(300, 300));
    this.setVisible(true);
    } public void actionPerformed(ActionEvent e) {
    if (e.getSource().equals(mi)) {
    new MyDialog();
    }
    }}class MyDialog extends JDialog { private static final long serialVersionUID = 4463681153478016484L; public MyDialog() {
    super();
    this.setModal(true);
    init();
    } private void init() {
    this.getContentPane().setLayout(new BorderLayout());
    this.getContentPane().add(getCenterPanel(), BorderLayout.CENTER);
    this.setSize(new Dimension(200, 200));
    this.setVisible(true);
    } private JPanel getCenterPanel() {
    JPanel panel = new JPanel();
    panel.setLayout(new FlowLayout(FlowLayout.CENTER));
    JTextField field1 = new JTextField(5);
    JTextField field2 = new JTextField(5);
    JComboBox cb = new JComboBox();
    cb.addItem("cb1");
    cb.addItem("cb2");
    cb.addItem("cb3");
    panel.add(field1);
    panel.add(field2);
    panel.add(cb);
    return panel;
    }
    }