JMenuItem不执行操作

时间:2013-06-09 02:48:02

标签: java swing awt actionlistener jmenuitem

我查看了摇摆教程,但我看不出我做错了什么。当我点击jmenuitem时为什么没有发生什么?

我的第一堂课:

import javax.swing.*;

public class WordProcess{

/*TODO: make program end on close
 */
public static void main(String[] args) {

    MainFrame frame = new MainFrame("Word Processor", 10000, 10000);
    }
} 

第二课:

import javax.swing.*;

public class MainFrame extends JFrame {

JMenuBar menubar = new JMenuBar();


public MainFrame(String name, int x, int y) {
    setTitle(name);
    setSize(x, y);
    setVisible(true);
    setJMenuBar(menubar);



    //creates file menu and adds to menubar
    //TODO populate with JMenuItems 
    JMenu filemenu = new JMenu("file");
    filemenu.setVisible(true);
    menubar.add(filemenu);

    buttonnew buttonnew = new buttonnew("new");
    buttonnew.setVisible(true);
    filemenu.add(buttonnew);
}
}

和第三课:

import javax.swing.*;
import java.awt.event.*;

public class buttonnew extends JMenuItem implements ActionListener{

buttonnew(String s) {
super();
super.setText(s);
addActionListener(this);
}

@Override
public void actionPerformed(ActionEvent ae) {
    JFrame newframe = new JFrame("sup");
}

}

1 个答案:

答案 0 :(得分:3)

按下按钮时,它将创建一个空的,不可见的JFrame。你不会看到它,因为你没有在它上面调用setVisible(),它很小,因为它没有内容。否则,代码就可以了。