使用Java编辑表格单元格
问题描述:
我有一个带有列的表格。最初,表格是空白的。我需要像Excel一样在单元格中输入值。我按照javafx-table-cell-editing的问题以及TableView上的JAVA教程。使用Java编辑表格单元格
我编写这样的:
colCom1.setCellValueFactory(new PropertyValueFactory<>("C1"));
colCom1.setCellFactory(TextFieldTableCell.forTableColumn());
colCom1.setOnEditCommit(new EventHandler<TableColumn.CellEditEvent<commonDataClass, String>>() {
@Override
public void handle(TableColumn.CellEditEvent<commonDataClass, String> t) {
((commonDataClass) t.getTableView().getItems().get(
t.getTablePosition().getRow())).setD1(t.getNewValue().toString());
tC1.setItems(myC1);
System.out.println("Col1->" + colCom1.isVisible());
tC1.refresh();
tC1.setVisible(true);
}
}
});
我现在面临的问题是编辑,然后按“Enter”之后没有出现在小区(小区仍为空白),而数据的打印表明价值已经正常进入。
答
我改性setCellValueFactory
作为
colCom1.setCellValueFactory (
new Callback<CellDataFeatures<commonDataClass, String>, ObservableValue<String>>() {
public ObservableValue<String> call(
CellDataFeatures<commonDataClass, String> p) {
// p.getValue() returns the Person instance for a particular TableView row
return p.getValue().d1NameProperty();
}
});
这清楚地显示该内容。
我不明白downvote的原因。我正在等待帮助。我没有找到任何帮助,这是我试图让它工作的方式?我还提到了我所关注的资源。这个地方不适合我的研究。 – vegaonline
回答你自己的问题的唯一目的是为其他用户提供有用的信息。对于其他任何人来说,这个答案都是毫无意义的,因为你没有解释为什么它解决了这个问题,并且你没有在可能表明这是问题的问题中提供代码。鉴于你提供的信息,没有任何办法,这可以推广到其他任何东西。由于它对任何其他用户都没有任何用处,所以我低估了它。 –
我提到从第一篇文章中更改setCellValueFactory,第二篇文章显示了单元格中的条目。我是新手,而不是像你这样的专家。我贴出来知道我是否遵循正确的事情。我在这里是为了获得知识而不是参加选举。 – vegaonline