我已經建立了一個NetBeans表單,並且綁定了一個bean屬性的文本字段。綁定應該是雙向的,但只能單向運行。更新GUI中的字段會更新bean,但如果更新了bean,則GUI不會更新。Netbeans綁定字段沒有更新圖形用戶界面
,Netbeans的生成的代碼看起來像這樣爲每個屬性:
binding=org.jdesktop.beansbinding.Bindings.createAutoBinding(
org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, crmmast1,
org.jdesktop.beansbinding.ELProperty.create("${fname}"), lname,
org.jdesktop.beansbinding.BeanProperty.create("text"));
bindingGroup.addBinding(binding);
我的豆已性質變化的支持:
private PropertyChangeSupport changeSupport = new
PropertyChangeSupport(this);;
public void addPropertyChangeListener (PropertyChangeListener listener) {
changeSupport.addPropertyChangeListener(listener);
}
public void removePropertyChangeListener(
PropertyChangeListener listener) {
changeSupport.removePropertyChangeListener(listener);
}
public void firePropertyChange (String propertyName,
Object old, Object newObj) {
changeSupport.firePropertyChange(propertyName, old, newObj);
}
內SETT的性質我有:
public void setFname(String newName) {
firePropertyChange("fname", fname, newName);
this.fname = newName;
}
當我更新底層bean時,bean更新但文本域不(甚至儘管我已經證實財產變更事件正在被解僱。
有關正確的方法,請參閱下面猴子的回答。您必須先在bean上設置值,然後再觸發屬性更改。 –