【发布时间】:2013-09-10 16:10:08
【问题描述】:
我有一些 Java Swing 组件的 visible 属性设置为 false。当它们不可见时,我不希望它们占用布局中的任何空间。实现这一目标的最佳方法是什么?
我希望模仿 WPF 的 Visibility.Collapsed 的行为。
编辑:我正在使用 MiGLayout。正如 kiheru 在答案中描述的那样,我遇到的问题是 MiGLayout 特有的,而不是一般的 Swing 布局。
【问题讨论】:
-
这不是使用布局管理器正确完成布局时的默认行为吗?
-
我有一个 JLabel,其
text属性设置为字符串。当我将其visible属性设置为 false 时,标签仍会占用空间,但不会显示文本。我正在使用设置为flowy的 MiGLayout。 -
这显然是 MigLayout 的一个奇怪之处。您需要将
hidemode设置为默认值以外的其他值。见miglayout.com/whitepaper.html -
@kiheru,这应该是一个答案。
标签: java swing layout visibility miglayout