我有一个简单的JFrame,里面有几个jtextfields,每个jtextfield的text属性通过数据绑定绑定到一个对象的字段(我使用窗口生成器来设置绑定),当用户更改JTextField上的某些内容,这些更改会自动反映到绑定的对象属性中,我有需要在用户按下JButton(取消按钮)时,用户所做的每个更改都将被丢弃。Swing DataBinding当取消按钮被按下时回滚改变
所以我想当用户开始编辑字段就像一个事务将被启动,并取决于用户的行为(确定或取消按钮)的事务正在提交或RollBacked。
Swing Data Binding框架有可能吗?怎么样 ?
这里说的初始化数据绑定代码:
/**
* Data bindings initialization
*/
protected void initDataBindings() {
//Title field
BeanProperty<Script, String> scriptBeanProperty = BeanProperty.create("description");
BeanProperty<JTextField, String> jTextFieldBeanProperty = BeanProperty.create("text");
AutoBinding<Script, String, JTextField, String> autoBinding = Bindings.createAutoBinding(UpdateStrategy.READ_WRITE, script, scriptBeanProperty, textFieldName, jTextFieldBeanProperty, "ScriptTitleBinding");
autoBinding.bind();
//Id field
BeanProperty<Script, Long> scriptBeanProperty_1 = BeanProperty.create("id");
BeanProperty<JLabel, String> jLabelBeanProperty = BeanProperty.create("text");
AutoBinding<Script, Long, JLabel, String> autoBinding_1 = Bindings.createAutoBinding(UpdateStrategy.READ, script, scriptBeanProperty_1, labelScriptNo, jLabelBeanProperty, "ScriptIdBinding");
autoBinding_1.bind();
}
这似乎是一个奇妙的解决方案,我在哪里可以找到BindingGroupBean源文件?是可用的么 ? – aleroot 2011-12-24 13:13:41
@aleroot相同的地方,为确切的包看看进口:-) – kleopatra 2011-12-24 15:56:57