在Jpanel上放置组件

时间:2013-12-04 14:58:52

标签: java swing layout jpanel

我可以在同一JPanel中组合Java布局吗?把我的组件放在JPanel上我很困惑。它应该像这样:JLabel,JButton,JButton,JLabel和新线路一样。我使用BorderLayout但它不会进入下一行,继续向同一行添加组件,我需要一个新行。理想坐uation will be that i can use BorderLayout结合cardlayout或其他一些好的解决方案。

编辑:使用GridLayout解决(0,4)它将完成这项工作,直到我学会使用GridBaglayout。谢谢你试图帮助我。

enter image description here

2 个答案:

答案 0 :(得分:1)

是的,您可以组合布局。

使用JPanel您可以嵌入其他JPanels

JPanel back = new JPanel(new BorderLayout());
JPanel rows = new JPabel(new GridLayout(3,3));

back.add(rows, BorderLayout.CENTER);

虽然很难确切地知道你想要实现的目标,但却没有看到你的代码!

答案 1 :(得分:1)

是的,你可以组合java布局。

我使用的常见模式是首先在帧上使用 BorderLayout 。中心组件扩展,而其他组件缩小。在这些面板中,我可能有一个 Flowlayout ,以显示在顶部水平均匀分布的按钮。

表单的另一种常见方法是使用 Gridbaglayout ,然后在gridX和gridY位置添加所有表单元素。然后,我可以使用Gridbaglayout repetoire中的其他约束来拉伸和柚木这些单元格。

您可以添加屏幕截图,以便我们可以看到您想要做的事情吗?