在面板的中心以南添加标签?

Adding a label to the center south of a panel?

下面的代码将标签添加到面板的左南,当我对标签使用 set location 时,位置没有改变。有没有办法让标签位于面板的中央以南而不需要额外的面板?

编辑:JFrame 有一个 BorderLayout 并将面板添加到 CENTER

JPanel pnl = new JPanel();
pnl.setPreferredSize(new Dimension(500,500));
JLabel lbl = new JLabel("label");
pnl.setLayout(new BorderLayout());
pnl.add(lbl, BorderLayout.SOUTH);

您似乎需要将标签的文本对齐设置为中心面板? 如果是这样,试试这个:

JPanel pnl = new JPanel();
pnl.setPreferredSize(new Dimension(500, 500));
JLabel lbl = new JLabel("label", SwingConstants.CENTER); //Set text align
pnl.setLayout(new BorderLayout());
pnl.add(lbl, BorderLayout.SOUTH);
lbl.setBackground(Color.red);
lbl.setOpaque(true); //Test background
getContentPane().add(pnl);

结果: