public class NewJFrame extends javax.swing.JFrame
我定义了几个JFrame 类,我如何在主窗口的菜单项调用?非常简单,谢谢!

解决方案 »

  1.   

    菜单上有按钮吧。无论是啥吧,就放到action里就好啦button.actionPerformed(ActionEvent e) {
        New newFrame = new newFrame();
        newFrame.setVisible(true);
        newFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(false);
    }
      

  2.   

    菜单 肯定要注册监听的 
    然后 点击的时候 调用你的 frame就可以了 
      

  3.   


    我加了,这个不好用呢?我的Jframe菜单还是出不来
      

  4.   

    New newFrame = new newFrame(); 
    是啥?
      

  5.   

    如果你只是想让菜单出来,不执行事件的话,你可以用下面这个代码:
    package awt_or_swing;import javax.swing.JFrame;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JMenuItem;public class menu {
    public static void main(String args[]){
    FirstWindow win=new FirstWindow("第一个简单的窗口");
    }
    }
    class FirstWindow extends JFrame{
    JMenuBar menubar;
    JMenu menu;
    JMenuItem item1,item2;
    FirstWindow(String s){
    setTitle(s);
    setSize(160,170);
    setLocation(120,120);
    setVisible(true);
    menubar=new JMenuBar();
    menu=new JMenu("文件");
    item1=new JMenuItem("打开");
    item2=new JMenuItem("保存");
    menu.add(item1);
    menu.addSeparator();
    menu.add(item2);
    menubar.add(menu);
    setJMenuBar(menubar);
    validate();                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    }
    想要让它执行事件就加监听器和事件就可以了
      

  6.   

    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;import javax.swing.JFrame;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JMenuItem;public class FirstWindow extends JFrame {
    public static void main(String args[]) {
    FirstWindow win = new FirstWindow("第一个简单的窗口");
    } JMenuBar menubar;
    JMenu menu;
    JMenuItem item1, item2; FirstWindow(String s) {
    setTitle(s);
    setSize(160, 170);
    setLocation(120, 120);
    setVisible(true);
    menubar = new JMenuBar();
    menu = new JMenu("文件");
    item1 = new JMenuItem("打开");
    item1.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
    new FirstWindow("第二个简单的窗口").setVisible(true);
    }
    });
    item2 = new JMenuItem("保存");
    menu.add(item1);
    menu.addSeparator();
    menu.add(item2);
    menubar.add(menu);
    setJMenuBar(menubar);
    validate();
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    }在8楼基础上完成。
      

  7.   

    item1.addActionListener(new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    new FirstWindow("第二个简单的窗口").setVisible(true);
                }
            });
    这个好!!
      

  8.   

    没理解错的话,你监听响应的事件,将那么frame给new出来不就得了