1

我有一个 2 行 5 列的 GridLayout,我想将第一行的高度设置为 50,将第二行设置为 200。我知道 GridLayout 创建了大小相同的单元格,所以这没有成功。我还尝试将两行拆分为两个 GridLayout,设置它们所需的高度并将它们添加到 FlowLayout,但列并没有按照我想要的方式对齐。我的代码是这样的:

row1.setSize(WIDTH, 50); //GridLayout
row2.setSize(WIDTH, 200); //GridLayout
panel.add(row1);
panel.add(row2); //panel is a FlowLayout

列对齐非常重要,我似乎无法做到这一点。

4

3 回答 3

2

我会研究 GridBagLayout。虽然,几乎我交谈过的每个人似乎都不喜欢它。不过我喜欢。

于 2011-07-12T04:51:04.237 回答
2

您不能使用 GridLayout 来执行此操作。

您应该能够使用 GridBagLayout 或 SpringLayout。查看布局管理器上的 Swing 教程以获取一些示例,以帮助您入门。

此外,您不会将单个行添加到布局中。您需要使用您选择的任何布局管理器将所有 10 个组件单独添加到同一个面板。

于 2011-07-12T05:30:07.167 回答
0

GridLayout 中的每个单元格的大小完全相同,因此您必须使用不同的布局管理器,例如 GridBagLayout。

于 2011-07-12T05:52:33.397 回答