3

我使用 2 行 6 列的网格布局。第一列是标签,第二列是组合。我的问题是

根据标签的大小,组合框的大小也会增加。我想要一个稳定的组合尺寸?我应该使用哪种布局?我想要一个像

* label1:combo1 label2:combo2 label3:combo3 label4:text1 label5:text2 label6:text3 *

4

5 回答 5

4

遍历所有标签并为所有标签设置最大尺寸。

Label 1             |________________|
Label Label 2       |________________|
Label Label Label 3 |________________|
Label 1             |________________|
于 2012-08-02T08:13:46.310 回答
4

如果您必须手动编写布局并且使用 3rd 方库没有问题,您可以试试Miglayout

您还可以使用图形编辑器来布局您的面板。有两种免费工具可以做得很好(我知道):一个随NetBeansEclipse WindowBuilder 一起提供。

于 2012-08-02T08:19:27.773 回答
4
  1. 因为GridLayout您可以使用JComboBox#setPrototypeDisplayValueJComboBox ,然后您可以非常舒适地在屏幕上设置初始大小

  2. 你可以使用SpringLayoutGridBagLayout

  3. LayoutManagers例如,MigLayout使用今天的习惯

  4. 注意要选择正确的LayoutManager,一切都取决于内容是否应该使用容器调整大小

于 2012-08-02T08:37:08.287 回答
3

您可以使用 GridBagLayout,将组合框的 GridBagConstrints.fill 设置为 HORIZONTAL

于 2012-08-02T08:50:17.677 回答
2

在一个GridLayout所有的瓷砖都具有相同的大小。

您应该考虑使用GridBagLayout. 您还需要GridBagConstraints为每个 GUI 元素使用 a 来指定其位置。

于 2012-08-02T08:14:04.820 回答