import javax.swing.*;
public class Task1 {
public static void main (String[] args) {
Task1 a = new Task1();
}
public Task1() {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setSize(400,500);
JMenuBar menuBar = new JMenuBar();
JMenu file = new JMenu("File");
JMenu help = new JMenu("help");
menuBar.add(help);
menuBar.add(file);
frame.add(menuBar);
JMenuItem load = new JMenuItem("Load");
JMenuItem save = new JMenuItem("Save");
JMenuItem exit = new JMenuItem("Exit");
JMenuItem about = new JMenuItem ("About");
help.add(about);
file.add(exit);
file.add(save);
file.add(load);
}
}
出于某种原因,当我运行此代码时,菜单显示为垂直而不是水平,我不知道为什么。我知道这是一个基本的事情,但我想不出一个不会导致错误的解决方案。
最佳答案
这是因为您使用的是 JFrame.add()
而不是 JFrame.setMenuBar()
。前者将组件(JMenuBar
就是)添加到 JFrame
的内部 contentPane
。从此更改您的代码:
frame.add(menuBar);
对此:
frame.setMenuBar(menuBar);
关于java - 当我运行代码时,菜单显示为垂直而不是水平,我该如何更改它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49822419/