我用swing创建了一个应用程序,并添加了JMenuBar。启动应用程序时,单击JMenu可以看到JMenuItems。但是,当我调整窗口大小时,JMenuItems在我的应用程序中被JButtons覆盖。 这是它的外观:
调整大小后的外观如下:
我已经尝试过改变外观,但这是同样的问题。
我如何加载框架
public void loadFrame() {
frame = new JFrame("Minecraft Visual Stage Designer");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(new BorderLayout());
threeDimensionalViewPanel = new ThreeDimensionalView();
actionContentPanel = new ActionContentPanel();
status = new JLabel("Loading MCVSD...");
frame.getContentPane().add(threeDimensionalViewPanel, "Center");
frame.getContentPane().add(actionContentPanel, "West");
frame.getContentPane().add(status, "South");
frame.setSize(1024, 768);
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screensize = toolkit.getScreenSize();
frame.setJMenuBar(createMenuBar());
frame.setLocation((screensize.width - frame.getWidth()) / 2, (screensize.height - frame.getHeight()) / 2);
frame.setVisible(true);
status.setText("Loaded MCVSD!");
}
我如何加载JMenuBar
private JMenuBar createMenuBar() {
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("File");
JMenuItem newMenu = new JMenuItem("New Project...");
JMenuItem loadMenu = new JMenuItem("Load Project...");
JMenuItem saveMenu = new JMenuItem("Save...");
JMenuItem saveAsMenu = new JMenuItem("Save as...");
JMenuItem exportMenu = new JMenuItem("Export Project...");
JMenuItem settingsMenu = new JMenuItem("Settings...");
JMenuItem exitMenu = new JMenuItem("Exit");
fileMenu.add(newMenu);
fileMenu.add(loadMenu);
fileMenu.add(saveMenu);
fileMenu.add(saveAsMenu);
fileMenu.addSeparator();
fileMenu.add(exportMenu);
fileMenu.addSeparator();
fileMenu.add(settingsMenu);
fileMenu.addSeparator();
fileMenu.add(exitMenu);
//other menus
menuBar.add(fileMenu);
return menuBar;
}