Java Swing JMenuBar

发布于 2024-12-18 13:13:04 字数 1582 浏览 2 评论 0原文

我的 JMenuBar 根本不显示。这只是一个准系统 GUI。我已经在这里坐了很长一段时间了,但我看不出问题所在,所以,正如他们所说,四只眼睛比两只眼睛好。

谢谢。

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

public class MainGui{
    private DrawPanel drawPanel;
    private JFrame mainFrame;
    private JPanel drawPanel;
    private JMenuBar menuBar;
    private JMenu fileMenu, imgMenu, helpMenu;
    private JMenuItem fileNew, fileOpen, fileSave, fileExit;
    private JMenuItem imgBtn1;
    private JMenuItem hlpAbout;

    public MainGui(DrawPanel drawPanel){
    mainFrame = new JFrame("JDraw v1");
    mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    mainFrame.setLayout(new BorderLayout());

    this.drawPanel = drawPanel;

    menuBar = new JMenuBar();
    fileMenu = new JMenu("File");
    imgMenu = new JMenu("Image");
    helpMenu = new JMenu("Help");

    fileNew = new JMenuItem("New File");
    fileOpen = new JMenuItem("Open File");
    fileSave = new JMenuItem("Save File");
    fileExit = new JMenuItem("Exit");
    imgBtn1 = new JMenuItem("Useless Button");
    hlpAbout = new JMenuItem("About this program");

    mainFrame.add(menuBar, BorderLayout.PAGE_START);
    menuBar.add(fileMenu);
    menuBar.add(imgMenu);
    menuBar.add(hlpMenu);

    fileMenu.add(fileNew);
    fileMenu.add(fileOpen);
    fileMenu.add(fileSave);
    fileMenu.add(fileExit);
    imgMenu.add(imgBtn1);
    helpMenu.add(hlpAbout);

    mainFrame.add(drawPanel, BorderLayout.CENTER);

    mainFrame.pack();
    mainFrame.setSize(640,480);
    mainFrame.setResizable(false);
    mainFrame.setVisible(true);
    }
}

my JMenuBar is not showing AT ALL. This is just a barebones GUI. I have sat here for quite a while now, and I cannot see the problem, soo, as they say, four eyes are better than two.

Thanks.

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

public class MainGui{
    private DrawPanel drawPanel;
    private JFrame mainFrame;
    private JPanel drawPanel;
    private JMenuBar menuBar;
    private JMenu fileMenu, imgMenu, helpMenu;
    private JMenuItem fileNew, fileOpen, fileSave, fileExit;
    private JMenuItem imgBtn1;
    private JMenuItem hlpAbout;

    public MainGui(DrawPanel drawPanel){
    mainFrame = new JFrame("JDraw v1");
    mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    mainFrame.setLayout(new BorderLayout());

    this.drawPanel = drawPanel;

    menuBar = new JMenuBar();
    fileMenu = new JMenu("File");
    imgMenu = new JMenu("Image");
    helpMenu = new JMenu("Help");

    fileNew = new JMenuItem("New File");
    fileOpen = new JMenuItem("Open File");
    fileSave = new JMenuItem("Save File");
    fileExit = new JMenuItem("Exit");
    imgBtn1 = new JMenuItem("Useless Button");
    hlpAbout = new JMenuItem("About this program");

    mainFrame.add(menuBar, BorderLayout.PAGE_START);
    menuBar.add(fileMenu);
    menuBar.add(imgMenu);
    menuBar.add(hlpMenu);

    fileMenu.add(fileNew);
    fileMenu.add(fileOpen);
    fileMenu.add(fileSave);
    fileMenu.add(fileExit);
    imgMenu.add(imgBtn1);
    helpMenu.add(hlpAbout);

    mainFrame.add(drawPanel, BorderLayout.CENTER);

    mainFrame.pack();
    mainFrame.setSize(640,480);
    mainFrame.setResizable(false);
    mainFrame.setVisible(true);
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

玩物 2024-12-25 13:13:04

你想做:

mainFrame.setJMenuBar(menuBar);

不:

mainFrame.add(menuBar, BorderLayout.PAGE_START);

You want to do:

mainFrame.setJMenuBar(menuBar);

not:

mainFrame.add(menuBar, BorderLayout.PAGE_START);
冷弦 2024-12-25 13:13:04

我认为你应该使用:

mainFrame.setMenuBar(menuBar);

I think you should use:

mainFrame.setMenuBar(menuBar);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文