我刚刚发现,当表具有足够的数据时,JavaFX TableView选择模型r
-方法非常慢-我没有耐心等待5万行花费多长时间。
有人对如何一次选择所有项目有任何变通办法吗?
否则,TableView默认启用selectAll()
来选择其所有行。我将如何继续禁用此快捷方式?
这里的示例代码演示了运行缓慢,只需按Ctrl+A
:
Ctrl+A
答案 0 :(得分:1)
我没有遇到您描述的相同行为。将示例大小从50.000更改为500.000会增加按键和UI更新之间的延迟。也许这个问题与CPU / Ram有关?我正在按照以下规范运行您的示例
OS:Win10-CPU:Intel i7-6700-RAM:16GB-Java:Oracle JDK 1.8.0_162。
尽管如此,要回答您的问题,您可以注册一个按键EventHandler,以通知有关按键(或上/下)的信息。如果事件描述了Ctrl + A,请调用consume以阻止其传播到其他侦听器(表本身)。
table.setOnKeyPressed(event -> {
if (event.getCode() == KeyCode.A && event.isControlDown()) {
event.consume();
}
});