2016-10-24 2 views
-1

Я использую JFXTreeTableView и хочу удалить выбранную строку из таблицы. Я пробовал много методов, но никто не работал для меня. При заданных нескольких методах, которые я пробовал до сих пор. tableView - это имя для таблицы, а student - это имя для ObservableArrayList типа Student класс.Как создать иллюзию, что строка удалена из JFXTreeTableView?

students.remove(tableView.getSelectionModel().getSelectedItem()); 
tableView.getSelectionModel().clearSelection(0); 

Теперь я хочу представить иллюзию, что строка была удалена. Я также обновил представление таблицы, но это не сработало.

ответ

0

Вы можете сделать

TreeItem<Student> selectedItem = tableView.getSelectionModel().getSelectedItem(); 
if (selectedItem == tableView.getRoot()) { // remove root, if you want: 
    tableView.setRoot(null); 
} else { // remove item from its parent: 
    selectedItem.getParent().getChildren().remove(selectedItem); 
} 
+0

Это дает мне следующие типы errorincompatible: Студент не может быть преобразован в TreeItem

+0

@AbdulMalik Это 'TreeTableView', право, а не' TableView'? –