如何使用表格视图中的复选框isSelected与TableView选择模型绑定。在手动(使用鼠标多选)中选择tableview中的项目
ObservableList<T> observableList = tableView.getSelectionModel().getSelectedItems();
System.out.println(observableList);
如何使用tableview绑定复选框
box.selectedProperty().addListener(new ChangeListener<Boolean>() {
@Override
public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) {
if (t1) {
Object object = getTableView().getItems().get(getTableRow().getIndex());
objects.add(object);
getTableView().getItems().set(getTableRow().getIndex(), object);
tableView.getSelectionModel().getSelectedItem(); //tableView.getSelectionModel().setSelectedIndex(getTableRow().getIndex());
} else {
Object object = getTableView().getItems().get(getTableRow().getIndex());
objects.remove(object);
}
System.out.println(objects);
}
});
如果在行中选择了复选框,行项目与getSelectionModel().getSelectedItems()
绑定,或者如何在tableView中手动设置setSelectedItems
答案 0 :(得分:1)
在box.selectedProperty().addListener()
tableView.getSelectionModel().select(getTableRow().getIndex());
box.selectedProperty().addListener(new ChangeListener<Boolean>() {
@Override
public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) {
if (t1) {
tableView.getSelectionModel().select(getTableRow().getIndex());
} else {
tableView.getSelectionModel().clearSelection(getTableRow().getIndex());
}
}
});