Java:MiGLayout:如何使用`hidemode`?

bgu*_*uiz 13 java swing miglayout gui-design

我开始使用MiGLayout进行GUI设计,我需要的一个功能是根据其他组件的状态显示/隐藏某些组件.

当我注意到MiGLayout支持的一个组件约束时,我自己会编码hidemode.

这是否符合我的想法?如果是这样,假设hidemode已经设置,我该如何触发隐藏/取消隐藏动作?(查看文档后,我能够找到如何设置hidemode,但之后不再使用它)


hidemode

设置组件的隐藏模式.如果已在"隐藏"模式中指定了隐藏模式,则可以通过组件约束覆盖此模式.隐藏模式指定了布局管理器应如何处理不可见的组件.模式是:

0 - 默认.意味着隐藏组件的处理方式与可见组件完全相同.
1 - 组件的大小(如果不可见)将设置为0,0.2
- 组件的大小(如果不可见)将设置为0,0并且间隙也将在其周围设置为0.
3 - 不可见组件根本不会参与布局,例如它不会占用网格单元.
示例:"hidemode 1"

tra*_*god 7

验证组件时,该模式适用,如本例所示.所述JFrameinitGUI()方法调用pack(),该调用validate()做初始布局.稍后,hideButton的ActionListener调用validate()会重新计算容器的布局以反映新的可见性设置.另请参见布局管理的工作原理.