我有一个JPanel的子类,我正在尝试将标签添加到

for(int i = 0; i < 10; i++)
{
        JLabel lblPID = new JLabel("" + i);
        lblPID.setBounds(55, i * 50, 15, 15);
        this.add(lblPID);
}


但是,当运行时,标签在相同的y点彼此水平排列,而忽略了我设置的边界。我如何使面板按应该出现的方式垂直放置?

最佳答案

可能的问题是,您要向其添加标签的容器正在使用布局管理器,这由您自己决定如何布置标签。

您应避免使用setBounds,因为您不能保证在不同的计算机上,即使它们运行的​​是相同的操作系统,标签也将呈现相同的外观。相反,您应该使用适当的布局管理器,由它们为您做出这些决定。

查看Laying out Components within a Container了解更多详细信息

07-26 06:17