如何在摇摆中使用GridLayout使我的列具有不同的大小?

时间:2011-06-24 17:29:43

标签: java swing grid-layout

我正在使用GridLayout,我的代码如下:

int changingVar = 1;

JPanel panel = new JPanel(new GridLayout(changingVar, 2));
panel.add(new JButton("BUTTON1"));
panel.add(new JButton("BUTTON2"));

这看起来像:

___________________________________________
| [      BUTTON1     ] [     BUTTON2     ] |
___________________________________________

这是两个大小均匀的列。我想这样做:

___________________________________________
| [          BUTTON1         ] [ BUTTON2 ] |
___________________________________________

其中一列占用更多的面板空间然后占用另一列。如何使用gridlayout执行此操作?我并不反对使用其他布局,只要我可以有两个不同大小的不同数量的行和列。

由于

1 个答案:

答案 0 :(得分:21)

如果你想要这个效果,那么你需要使用GridBagLayout。

http://download.oracle.com/javase/tutorial/uiswing/layout/gridbag.html

玩得开心= P

编辑:

您可以通过使用FlowLayout和GridLayout的混合来解决此问题,以获得类似的效果。但是,随着布局复杂性的增大,这种解决方案将变得非常繁琐和混乱。