我正在用 java swing 编写,我想知道是否有更好(更短)的方法将我的对象绑定(bind)到 gui 表单。
我将通过一个例子来描述这种需求 - 归零按钮:
假设我希望 GUI 上有一个数字字段和一个可以在其中输入零的按钮。就是这样。
我有一个 GUI 形式和 Java 类。以及一个包含所有数据并执行一些逻辑的模块类。
我通常会做的(我认为这很糟糕)是:
- 创建 gui 元素。
- 在模块上创建一个列表,其中包含特定字段中更改的所有监听器。
- 在 gui 上 - 在开头向模块添加一个监听器 [发送一个匿名类(值已更改)]
- 在模块上 - 在 setter 中 - 迭代监听器列表并通知所有。
- 在 gui 上 - 我的监听器将 TextField 更改为零。
这整个过程只是为了在旁边的字段中输入一个零:-0)。
现在对于每个字段...
这对我来说太渴望了。
(有时我只想将模块设置为零,然后用两行简单的代码将 GUI 文本设置为零)
这是最佳实践吗?
谢谢。
最佳答案
对我来说最佳实践是选择一个数据绑定(bind)框架并相应地使用它。数据绑定(bind)正是您想要的 - 模型(原文如此!)和 UI 之间的同步
Here's a Q/A page on SO其中包括许多指向 Java Swing 应用程序的数据绑定(bind)框架的链接。
关于Java swing - 如何将我的字段绑定(bind)到模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6056243/