1

我有一些visible属性设置为 false 的 Java Swing 组件。当它们不可见时,我不希望它们占用布局中的任何空间。实现这一目标的最佳方法是什么?

我正在寻找模仿 WPF 的行为Visibility.Collapsed

编辑:我正在使用 MiGLayout。正如 kiheru 在答案中描述的那样,我遇到的问题是 MiGLayout 特有的,而不是一般的 Swing 布局。

4

1 回答 1

4

MigLayout默认情况下以与可见组件相同的方式处理不可见组件。您需要指定hidemode其他类型的行为。从文档中,可能的值是:

  1. 默认。意味着不可见的组件将被完全处理,就好像它们是可见的一样。
  2. 组件的大小(如果不可见)将设置为 0、0。
  3. 组件的大小(如果不可见)将设置为 0、0,并且其周围的间隙也将设置为 0。
  4. 不可见的组件根本不会参与布局,例如它不会占用网格单元。
于 2013-09-06T14:32:56.033 回答