2

当我运行我的应用程序时,我的 JMenuBar 没有出现。我怎样才能解决这个问题??

因此,当我运行 JFrame 时,我需要在顶部看到我的 JMenuBar。

我的布局为

代码:

package view;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.WindowConstants;


public class Home extends JFrame {

    private Container window = getContentPane();

    public Home(){
        initGUI();  
    }

    public void initGUI(){

        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);        
        setPreferredSize(new Dimension(800, 600));
        setLayout(null);

        JMenuBar menu = new JMenuBar();
        JMenu file = new JMenu("File");
        menu.add(file);
        window.add(menu);



        pack();

    }
    }
4

2 回答 2

3
  • 你没有添加JMenuBarJFrame

  • 利用setJMenuBar(menu);

于 2012-11-08T11:11:39.663 回答
1

而不是 add(menu) 调用

  • setJMenuBar(菜单);

你也最好使用 SwingUtilities.invokeLater()

于 2012-11-08T11:13:58.533 回答