我想用一个新的更新TableView中的selectedItem。 这是我能够提出的最接近的:
private ObservableList<String> data = FXCollections.observableArrayList();
private TableView tableview;
...
tableview.setItems(data);
...
old = tableview.getSelectionModel().getSelectedItem();
new = "New"
data.remove(old);
data.add(new);
如果我只执行data.remove(旧)(不添加后),则selectView会从TableView消失,如果我只执行data.add(new)(之前没有删除),则添加新项目。没关系,但是当我在删除后添加(反之亦然)没有任何反应。
请对此有所启发。
答案 0 :(得分:0)
我修复了它更新旧项目和做一个肮脏的技巧来更新tableview。
old = new;
// dirty hack
tableview.getColumns().get(0).setVisible(false);
tableview.getColumns().get(0).setVisible(true);
远不是一个优雅的解决方案,但它目前有效。