TableView项目不会被删除但不响应

时间:2014-04-20 09:13:25

标签: java netbeans javafx tableview javafx-8


首先,我正在开发Windows 7,Netbeans 8,JDK 8 我有TableViewPOJO个对象(不使用属性) 我正在尝试实现“在键入时搜索”,但发生了一些奇怪的事情 在此图像中,您可以看到所有学生都在显示:
all students displayed
在搜索完成后的下一张图片中,您可以看到问题。
前4名学生是实际搜索结果,并且是TableView中可点击的有效参赛作品 所有其他条目都可见但没有响应,但它们应该已被完全删除。 problematic search results

工作原理 (编码部分)
 1.当用户输入'f'时,调用一个函数  2.在函数中,我创建了包含搜索结果的新列表:
ObservableList<Student> subentries = FXCollections.observableArrayList();
 3.然后,我在subentries列表中添加符合搜索条件的所有项目  我打电话:
 5. studentsTable.setItems(subentries);
错误的结果如图2所示 HACKS我试过了:
1. randomButton.fire();
2.

columnsOfTheTable.get(0).setVisible(false);
columnsOfTheTable.get(0).setVisible(true);

以上不起作用 任何帮助将不胜感激 感谢

1 个答案:

答案 0 :(得分:6)

这是一个猜测,但如果您在表中使用自定义单元格(或行),请确保其updateItem(...)方法正确处理空单元格:

@Override
public void updateItem(SomeType item, boolean empty) {
    super.updateItem(item, boolean);
    if (empty) {
        setText(null);
        setGraphic(null);
    } else {
        // configure cell...
    }
}