Java Simple JFrame不会显示标题
我有一个非常简单的JFrame,这甚至是一个示例,无论我尝试什么,我都无法让JFrame显示标题Java Simple JFrame不会显示标题,java,swing,Java,Swing,我有一个非常简单的JFrame,这甚至是一个示例,无论我尝试什么,我都无法让JFrame显示标题 public class Builder{ public static void main(String s[]) { JFrame frame = new JFrame("JFrame Example"); JPanel panel = new JPanel(); panel.setLayout(new FlowLayout())
public class Builder{
public static void main(String s[]) {
JFrame frame = new JFrame("JFrame Example");
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
JLabel label = new JLabel("JFrame By Example");
JButton button = new JButton();
button.setText("Button");
panel.add(label);
panel.add(button);
frame.add(panel);
frame.setSize(200, 300);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
该示例显示内容中的标签和按钮,但不显示JFrame的标题
我正在使用java-8-oracle JRE
任何帮助都将不胜感激
问题自行解决。
谢谢大家在这方面的帮助
我真的无法解释。到目前为止,我已经编写了数百个应用程序,但这从未发生过。即使是旧的应用程序也没有显示标题
我在关闭eclipse后重新启动了机器。在我重新启动eclipse之后,它才开始正常工作。没有挂起需要重新启动计算机的更新。我确实认为机器重启修复了它,但不确定原因。可能是因为JFrame不够宽,所以标题被最小化、最大化和关闭按钮截断 而不是
frame.setSize(200300)代码>,请尝试:
frame.setPreferredSize(new Dimension(400, 400));
现在你应该看到你的标题了。另外,不要忘记frame.pack()代码>帧前设置可见(true)代码>
两件事可能会有所帮助,外观和感觉,以及窗户装饰
for( UIManager.LookAndFeelInfo lfi: UIManager.getInstalledLookAndFeels()){
System.out.println(lfi);
}
这将向您展示所有可用的外观和感觉。我相信《金属》会给你一个头衔
下一件事是从外观上要求装饰
frame.setDefaultLookAndFeelDecorated(true);
因为我没有非标题问题,所以我很难验证,但我怀疑这会给你一个标题栏。同样值得注意的是,你应该从EDT运行swing GUI。不,类似的结果。这只是一个例子,我发现试图解释为什么我不能在框架上的标题。我通常使用SwingUtilities来启动应用程序。我已经为此挣扎了两天了。JRE可能有问题吗?我是从Eclipse中运行的。这是一个罕见的例子,你可以考虑添加一个你的问题的屏幕截图——因为我看到标题在运行上面标题栏是窗口装饰的一部分时,如果StEsithSe从标题栏上剪掉,那将是非常意外的。@ Matt在Windows上运行OP代码时,没有标题。(被剪掉了),但把画面放大后,我看到了画面的标题"_(ツ)_/‾什么操作系统?我不确定默认情况下是否每个操作系统都显示一个标题。@马特,如果是这种情况,您可以尝试UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName())
我更改了调用UIManager.setLook…结果相同。我使用的是UbuntuLinux 16.04 LTS,您使用过它的look and feel吗?其他应用程序有标题吗?unity在选择应用程序时是否在顶部栏中显示标题?我调用了UIManager.getLookAndFeel()当我调用frame.setUndecorated(true)时,它是MetalLookAndFeel所有的顶部栏都消失了,没有关闭,最小化…。当我将其更改为false时,我得到了关闭,最小化…,但没有标题。@邪恶的我没有建议“SetUndercorated”,我建议设置DefaultLookandFeelCorated,文档中说标题将由外观处理。另外,您描述的SetUndercorated行为与我预期会发生什么。我两个都做了,第一个也不起作用。我正在使用Eclipse Oxygen。我想我要重新加载Eclipse,可能它有一个jre库混淆或什么的。我现在只是在抓救命稻草。@Nefarial我真的怀疑它与Eclipse或您正在使用的jre有关。我怀疑它是unity。试试不同的厕所k和feel也是,也许metal没有标题栏,但是我发布的代码会给你一个所有外观和感觉的列表。
frame.setDefaultLookAndFeelDecorated(true);