我的JMenu酒吧没有出现

时间:2012-11-08 11:07:37

标签: java swing jframe jmenubar

当我运行我的应用程序时,我的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();

    }
    }

2 个答案:

答案 0 :(得分:3)

  • 您未将JMenuBar添加到JFrame

  • 使用setJMenuBar(menu);

答案 1 :(得分:1)

而不是添加(菜单)调用

  • setJMenuBar(菜单);

另外,最好使用SwingUtilities.invokeLater()