如何在Java中设置JLabel的中心?

如何在Java中设置JLabel的中心?,java,swing,jlabel,Java,Swing,Jlabel,所以我是Java新手,我想创建一个菜单。我要做的第一件事是一个带有游戏名称的JLabel。我做了所有的事情,但我不知道如何将JLabel居中,使其位于屏幕中央,而不是侧面 我的朋友给了我一个代码,但它工作不太好,下面是: public static String gameName = "Game Name Placeholder"; JLabel label = new JLabel(gameName); label.setBounds(this.getWid

所以我是Java新手,我想创建一个菜单。我要做的第一件事是一个带有游戏名称的JLabel。我做了所有的事情,但我不知道如何将JLabel居中,使其位于屏幕中央,而不是侧面

我的朋友给了我一个代码,但它工作不太好,下面是:

public static String gameName = "Game Name Placeholder";
JLabel label = new JLabel(gameName);
        label.setBounds(this.getWidth()/2-100,this.getHeight()/2-150,1000,100);
        label.setFont(new Font("Dialog", Font.PLAIN, 34));

panel.add(label);
add(panel);
在这里你可以清楚地看到它没有居中:


对不起,我可能看起来很傻。我两天前才开始自学Java,所以如果有人能帮我,我会非常感激

您应该研究并使用布局管理器来完成这项工作,而不是手动设置组件的边界;但是现在标签不显示了,我把事情搞砸了吗?我所做的只是更改,我将假定
panel
是您创建的
JPanel
。您是否创建了一个新的
BorderLayout
,并在您的JPanel上设置了它?否则这就行不通了
JPanel
s默认布局是我记忆中的
FlowLayout
。对于您的用例,可以使用。是一些简单的演示代码,与您尝试做的相同。不要使用空布局!!!setBounds(…)语句表示您正在尝试手动定位零部件。不要!Swing设计用于布局管理器,正如已经建议的那样。如果您仍然有问题,请张贴一份适当的演示文件。