我试图在 JPanel 上的特定 X 和 Y 坐标处放置一系列 JLabel(并设置其高度和宽度)。无论我做什么,每个标签都会立即结束到前一个标签的右侧,并且与所有其他标签的大小完全相同。
现在,我的 Jpanel 处于网格布局中。我已经尝试过绝对布局(非法参数异常结果)、自由设计(没有标签出现)、流式布局(一切都被挤压到中心),以及其他一些布局。
不确定我需要做什么才能完成这项工作。谁能帮忙?谢谢!
JLabel lbl1 = new JLabel("label 1");
JLabel lbl2 = new JLabel("label 2");
JLabel lbl3 = new JLabel("label 3");
JLabel lbl4 = new JLabel("label 4");
JLabel lbl5 = new JLabel("label 5");
myPanel.add(lbl1);
myPanel.add(lbl2);
myPanel.add(lbl3);
myPanel.add(lbl4);
myPanel.add(lbl5);
lbl1.setLocation(27, 20);
lbl2.setLocation(123, 20);
lbl3.setLocation(273, 20);
lbl4.setLocation(363, 20);
lbl5.setLocation(453, 20);
lbl1.setSize(86, 14);
lbl2.setSize(140, 14);
lbl3.setSize(80, 14);
lbl4.setSize(80, 14);
lbl5.setSize(130, 14);
原文由 AndroidDev 发布,翻译遵循 CC BY-SA 4.0 许可协议
您必须将容器的布局设置为空:
然而,看看 Matisse Layout Manager 也是一个很好的建议,我猜它现在叫做 GroupLayout。绝对定位的主要问题是当窗口改变它的大小时会发生什么。