- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我开始使用 MiGLayout对于我的 GUI 设计,我需要的功能之一是根据其他组件的状态显示/隐藏某些组件。
当我注意到 MiGLayout 支持的 Component Constraints 之一是 hidemode
时,我打算自己编写代码。
这是否符合我的预期?如果是这样,假设已设置 hidemode
,我如何触发隐藏/取消隐藏操作? (在查看文档后,我能够找到如何设置 hidemode
,但不知道如何使用它)
隐藏模式
设置组件的隐藏模式。这种隐藏模式可以被组件约束覆盖。隐藏模式指定布局管理器应如何处理不可见的组件。这些模式是:
0 - 默认值。意味着不可见的组件将被处理得就像它们是可见的一样。
1 - 组件的大小(如果不可见)将设置为 0、0。
2 - 组件的大小(如果不可见)将设置为 0, 0 并且其周围的间隙也将设置为 0。
3 - 不可见组件根本不会参与布局,例如不会占用网格单元。
示例:“隐藏模式 1”
最佳答案
当组件为 validated 时应用该模式, 如本 example 所示. JFrame
的 initGUI()
方法调用 pack()
,后者调用 validate()
来执行初始操作布局。随后,hideButton 的 ActionListener
调用 validate()
,它重新计算容器的布局以反射(reflect)新的可见性设置。另见,How Layout Management Works .
关于Java:MiGLayout:如何使用 `hidemode`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2025782/
我开始使用 MiGLayout对于我的 GUI 设计,我需要的功能之一是根据其他组件的状态显示/隐藏某些组件。 当我注意到 MiGLayout 支持的 Component Constraints 之一
我在 MigLayout 中使用“hidemode 3”,以便隐藏组件根本不可见(并且不会对布局产生任何影响)。 我使用它是为了可以在文本框下方显示内联错误,仅在出现错误时才显示 每当我显示这些内联错
我是一名优秀的程序员,十分优秀!