Java JLabel不会将文本对齐到中心

Java JLabel不会将文本对齐到中心,java,swing,jlabel,layout-manager,boxlayout,Java,Swing,Jlabel,Layout Manager,Boxlayout,这个代码有什么错误吗 JFrame frame = new JFrame(); JPanel panel = new JPanel(); panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); JLabel lab = new JLabel(); lab.setHorizontalAlignment(SwingConstants.CENTER); lab.setText("TESET"); panel.add(lab); frame.ge

这个代码有什么错误吗

JFrame frame = new JFrame();
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
JLabel lab = new JLabel();
lab.setHorizontalAlignment(SwingConstants.CENTER);
lab.setText("TESET");
panel.add(lab);
frame.getContentPane().add(BorderLayout.NORTH,panel);
frame.setVisible(true);
frame.pack();

将来,一个合适的SSCCE应该包括main()方法和import语句,这样我们就不需要做任何额外的工作来测试代码

//lab.setHorizontalAlignment(SwingConstants.CENTER);
lab.setAlignmentX(JLabel.CENTER_ALIGNMENT);
水平对齐用于标签边界内的文本


AlignmentX用于父容器内的组件对齐。

将来,适当的SSCE应该包括main()方法和导入语句,这样我们就不需要做任何额外的工作来测试代码

//lab.setHorizontalAlignment(SwingConstants.CENTER);
lab.setAlignmentX(JLabel.CENTER_ALIGNMENT);
水平对齐用于标签边界内的文本


AlignmentX用于父容器内的组件对齐。

有时更改JLabel的颜色以查看其位置是很好的。标签可能没有按您的方式添加。为了更快地获得更好的帮助,请发布一条。有时更改JLabel的颜色以查看其位置是很好的。标签可能没有按您的方式添加。要更快地获得更好的帮助,请发布。谢谢!成功了!并将在下次记住SSCCE!:)我相信这是一个盒子布局的问题。BoxLayout需要设置AlignmentX/AlignmentY。谢谢!成功了!并将在下次记住SSCCE!:)我相信这是一个盒子布局的问题。BoxLayout需要设置AlignmentX/AlignmentY。