手动摆动数据绑定

时间:2012-01-10 21:56:05

标签: java swing design-patterns data-binding

我有相当大的摇摆界面(几个文本框,组合框,复选框,自定义弹出对话框等)和一个数据模型,当ui控件更改时必须更改:新文本输入文本框,单击复选框等

问题是:组织输入值的更新+验证的最佳做法是什么。

不幸的是我不能像beanbinding那样使用绑定框架。

2 个答案:

答案 0 :(得分:2)

为组件添加适当的侦听器,并在触发事件时更新模型。

或者设计您的UI,以便只有在单击保存确定按钮时才能将所有内容保存到模型中。这也有助于验证,因为您只需要在单击按钮时立即验证所有内容。

答案 1 :(得分:2)

将JB Nizet的答案与组件中的验证结合起来,例如使用JFormattedTextField(或此增强版本)。您也可以使用JFormattedTextField作为JComboBox实例的编辑器。您可以向JSlider个实例添加验证。

简而言之,当用户键入无效值时,会立即向用户提供反馈。结合模型方面的验证可以很好地应用。

这可以与现代网站进行比较:使用javascript进行客户端验证,为用户提供即时反馈+验证服务器端验证(不通过用户界面),或避免讨厌的用户绕过客户端验证