有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在swing中使用GridLayout使列大小不同?

我使用的是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) 个答案

  1. # 1 楼答案

    如果您想要这种效果,那么您需要利用GridBagLayout

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

    玩得开心点

    编辑:

    您可以通过混合使用FlowLayout和GridLayout来解决这个问题,以获得类似的效果。但是,随着布局复杂性的增加,此解决方案将变得极其乏味和混乱