Data binding 无法将文本字段绑定到NetBeans中JTable中的选定项
我试图使用NetBeans将JTextField绑定到JTable的选定元素 JTable从AbstractTableModel子类获取数据,该子类返回Cow对象。目前,每个Cow对象通过其toString方法显示为字符串 我试图将JTextField的text属性绑定到JTable中选择的Cow对象的name属性 我将NetBeans中JTextField的text属性绑定到:Data binding 无法将文本字段绑定到NetBeans中JTable中的选定项,data-binding,netbeans,jtable,javabeans,Data Binding,Netbeans,Jtable,Javabeans,我试图使用NetBeans将JTextField绑定到JTable的选定元素 JTable从AbstractTableModel子类获取数据,该子类返回Cow对象。目前,每个Cow对象通过其toString方法显示为字符串 我试图将JTextField的text属性绑定到JTable中选择的Cow对象的name属性 我将NetBeans中JTextField的text属性绑定到: 流程表[${selectedElement.name}] 这将生成以下生成的代码行: org.jdesktop.be
流程表[${selectedElement.name}]
这将生成以下生成的代码行:
org.jdesktop.beansbinding.Binding binding =
org.jdesktop.beansbinding.Bindings.createAutoBinding(
org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE,
cowTable,
org.jdesktop.beansbinding.ELProperty.create("${selectedElement.name}"),
cowNameTextField,
org.jdesktop.beansbinding.BeanProperty.create("text"));
文本字段的绑定值始终为空
我做错了什么?您的
Cow
类是否有一个公共字符串getName()
方法返回名称
如果没有,你得到的结果将是意料之中的。如果有,您是否可以发布更多代码(您的数据类、tablemodel、table…。如果您只对表中的字符串感兴趣,而不是对Cow对象本身感兴趣:
table.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
if(!e.getValueIsAdjusting()) {
Object value = table.getValueAt(e.getFirstIndex(), COLUMN_X);
jTextField.setText(value.toString());
}
}
);
您的Cow类是否支持添加
属性ChangeListener
?我没有经常使用NetBeans提供的bean绑定支持,但我记得您需要它。无论如何,多一点代码可能有助于找出问题所在。您能发布更多代码(您的tablemodel、table…)吗?我不再从事这个项目,因为我最终没有使用NetBeans绑定。您好,您所说的列\u X是什么意思。。。这是指一个固定的列号,我应该用它来绑定文本字段吗?