无法将文本字段绑定到NetBeans中的JTable中的选定项
我试图使用NetBeans将JTextField绑定到JTable的选定元素。无法将文本字段绑定到NetBeans中的JTable中的选定项
JTable从AbstractTableModel子类中获取其数据,该子类返回Cow对象。目前,每个Cow对象都通过其toString方法显示为一个String。
我试图将JtextField的文本属性绑定到在JTable中选择奶牛对象的名财产。
我结合的JTextField的文本属性在NetBeans中:
flowTable[${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
类是否有返回名称的public String getName()
方法?
如果没有,你会得到的结果是预期的。如果是这样,你可以发布更多的代码(你的数据类,tablemodel,表...)。
如果你只是有兴趣在表中的字符串,而不是牛对象本身:
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());
}
}
);
你好,你是什么意思由COLUMN_X ...是指引用一个固定的列号,我应该绑定文本字段? – Ahmed 2011-01-01 22:56:20
贵牛类支持添加PropertyChangeListener
?我没有经常使用NetBeans的bean绑定支持,但我记得你需要它。无论如何,多一点代码可以帮助我们找出发生了什么问题。
你能发布更多的代码吗(你的tablemodel,table ...) – JRL 2010-04-11 13:57:47
我不再在这个项目上工作,因为我最终没有使用NetBeans绑定。 – titaniumdecoy 2011-01-23 08:49:02