0

我有一个罕见的用例,其中摆动视图的寿命比相关的表示模型长:摆动视图的寿命与应用程序的寿命一样长,每次在应用。

演示模型是一个 groovy bean:

@Bindable
static class MyPresentationModel{
   String myText = 'default-text'
}

swing-view 是一个 JTextField,使用 JGoodies BeanAdapter 绑定:

JTextField myTextField = new JTextField()
MyPresentationModel pm = new MyPresentationModel()
BeanAdapter<MyPresentationModel> beanAdapter = new BeanAdapter<MyPresentationModel>(pm, true)
Bindings.bind(myTextField , beanAdapter.getValueModel('myText'))

之后如何从 JTextField取消绑定表示模型?

我在 JGoodies-Binding API 中找到的唯一方向是

beanAdapter.setBean(null)

但这当然不会从 JTextField 中删除 JGoodies-PropertyChangeListener 和 JGoodies-DocumentListener。有没有一个很好的方法来删除这些?还是我自己破解了?

4

1 回答 1

0

据我所知,唯一的方法是打电话

Bindings.bind(myTextField , beanAdapter.getValueModel('myText'))

上述语句每次都使用来自新 PresentationModel 的新 bean 适配器。

您不能取消绑定绑定,您必须使用新的 PresentationModel 刷新绑定

于 2014-03-31T20:07:27.320 回答