为什么菜单栏不显示?

时间:2014-02-16 20:40:39

标签: java swing jframe bluej

当我创建一个对象(BlueJ)并弹出窗口时,没有菜单栏,为什么会这样?一切都是窗户和文字“标题”,仅此而已。我是OOP和Java的新手,我也在使用BlueJ。这是我的代码:

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

public class Spel
{
//Varibler
private JFrame frame;


/**
 * Skapa själva spelet.
 *
 */
public Spel()
{
    makeFrame();
}

/**
 * Skapa framet.
 */
private void makeFrame()
{
    //Skapa framet.
    frame = new JFrame("Spel");
    Container contentPane = frame.getContentPane();
    //lägg till titel.
    JLabel label = new JLabel("titel");
    contentPane.add(label);

    frame.pack();
    frame.setVisible(true);        
}

/**
 * Skapa menu baren.
 */
private void makeMenuBar(JFrame frame)
{
    //skapa menu bar 
    JMenuBar menubar = new JMenuBar();
    frame.setJMenuBar(menubar);
    //skapa menu
    JMenu fileMenu = new JMenu();
    menubar.add(fileMenu);
    //lägg till menu knappar
    JMenuItem openItem = new JMenuItem("Open");
    fileMenu.add(openItem);
    JMenuItem quitItem = new JMenuItem("Quit");
    fileMenu.add(quitItem);
}

1 个答案:

答案 0 :(得分:3)

您忘了拨打添加菜单栏的makeMenuBar

makeMenuBar(frame);

顺便提一下,您需要为文件菜单添加标题,否则菜单栏将不可见

JMenu fileMenu = new JMenu("File");