Swing 数据绑定框架
Posted
技术标签:
【中文标题】Swing 数据绑定框架【英文标题】:Swing data binding frameworks 【发布时间】:2011-01-24 22:51:38 【问题描述】:year ago 提出了几乎相同的问题,但在这一领域已经有了一些新的发展。
为 Swing 应用程序选择(数据绑定)框架似乎相当困难。 JSR-295 已被废弃,许多提供绑定的 Swing 框架正在开发中,对于我非常简单的应用程序来说已被废弃或过于繁重。 JGoodies Swing 套件很昂贵,但幸运的是它的库是免费的。
有没有人对新的UFaceKit 有任何实际经验。它看起来很有希望,但还很不成熟。我对 Swing 实现和文档特别感兴趣。任何有关 UFaceKits 开发计划的见解都将不胜感激,因为我可以暂时选择框架。需求并不是什么花哨的东西,只是使用一个不错的 API 进行绑定。
我也找到了Mogwai dataBinding,但它似乎很不完整,需要手动激活同步,这与粗粒度同步easily written by hand相比毫无用处。
不完整的框架至少包括 Spring RCP 和许多 JSR-296 分支。
那么,JGoodies 数据绑定真的是唯一现实的选择吗?或者还有其他可行的解决方案吗?
编辑: 这个问题在谷歌中的排名似乎很高,并且接受的答案反映了最初提出问题的时间。任何寻求构建使用数据绑定的新 Swing 应用程序的人都应该检查所有答案,他们了解该领域的最新进展。
【问题讨论】:
如果你喜欢 groovy 那么看看 griffon 【参考方案1】:BBB(几乎是 JSR 295 的官方分支)工作得很好。
【讨论】:
谢谢,我去看看。【参考方案2】:Beanfabrics 框架包含某种数据绑定。事实上,它是 Presentation Model 模式的一个实现:http://code.google.com/p/beanfabrics/
【讨论】:
【参考方案3】:这个项目还有一个易于使用的表单数据绑定,我在 2 年前创建了这个项目,从那时起,它的发展源于我的想法和一些合作者。
https://github.com/MarkyVasconcelos/Towel
【讨论】:
【参考方案4】:我正在编写一个支持 Swing 数据绑定的库,它使用 Swing 组件的 Views、Binders 和 ControlAccessors。
见http://www.jdal.org/doc/swing/jdal-swing-binding.php
【讨论】:
【参考方案5】:Melasse 项目可以将 UI 和 bean 粘合在一起而无需创建类:Binder.bind(/* source, target, options */)
。
例如仅在文本字段不为空时启用操作/按钮:https://github.com/cchantep/melasse/blob/master/README.md#bind-buttonaction-to-provided-value。
【讨论】:
【参考方案6】:我们现在要使用Eclipse WindowBuilder,我认为应该会顺利
见Swing Data Binding Examplehttp://code.google.com/javadevtools/
使用beanbinding-1.2.1.jar,即jdesktop.org项目。如果和JSR-295有关,我不知道(请编辑)
【讨论】:
以上是关于Swing 数据绑定框架的主要内容,如果未能解决你的问题,请参考以下文章