Java中的JMenu怎么不显示??

来源:百度知道 编辑:UC知道 时间:2024/05/18 05:28:34
下面这段代码运行时怎么不能显示出JMenu呢????
import java.awt.Container;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTabbedPane;
import javax.swing.SwingConstants;

public class TestTabbed extends JFrame{
public static void main(String [] args){
JFrame frame = new JFrame("TestTabbed");

JMenuBar m = new JMenuBar();
frame.setJMenuBar(m);
JMenu fileM = new JMenu("File");
JMenuItem newItem =fileM.add("New");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(100,120,150,150);
frame.setVisible(true);

}
}
我忘了加m.add(fileM);
中午打球后有些累,把这个给忘了。

我帮你改了改,主要问题是,你想显示一个控件比如JButton,必须先获取当前的面板,Container con= getContentPane();这很重要,直接用JFrame是不会看到的!
我简单的处理如下:你可以对照着看,我又新建了一个类 ,就是要使用getContentPane();你可以查查相关资料!

import java.awt.Container;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JTabbedPane;
import javax.swing.SwingConstants;
import javax.swing.*;

public class TestTabbed extends myFrame{

public static void main(String [] args){

myFrame myframe=new myFrame();
myframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
myframe.setBounds(100,120,150,150);
myframe.setVisible(true);

}
}

class myFrame extends JFrame
{
myFrame()
{
Container con= getContentPane();
//JFrame frame = new JFrame("TestTabbed");
JPanel myJPanel=new JPanel();
JMenuBar m = new JMenuBar(