使用Jfaces
组件,我想知道如何检测用户是否更改了UI控件。
我已经看到有一个接口PropertyChangeSupport,您可以在其中注册PropertyChangeListener,但是我不知道如何在SWT应用程序中使用它们。
例如,我的数据模型具有以下类。
class Person{
String firstName;
String lastName;
String address;
//etc
}
这实际上表示SWT
Table
中的一行(LabelProvider
将使行对象成为Person
)。我以为该类人应该有一个
PropertyChangeSupport
成员变量来进行更改,但是我不知道是谁注册了通知?ViewPart
? LabelProvider
?还有吗有什么帮助清除吗?
最佳答案
Vogella在这个主题上有两个非常好的教程。
This解释了如何设置数据结构并包括PropertyChangeSupport
(但是,本教程中未使用它)。 viewer.refresh()
是更新查看器的简便方法。这将必须手动调用。
This教程显示了如何使用DataBinding
(并最终使用PropertyChangeSupport
),它将在发生更改时通知侦听器。