如何确定TableView上的MouseClick事件是否出现在行上,而不是空行空间或标题?

时间:2017-10-20 15:34:44

标签: javafx-8

我今天早上从质量检查中得到了这个有趣的问题,而不是为每个表创建rowfactory - 我想看看是否有更直接的方法来完成以下操作。

用户双击表中的记录 - 它会启动一些行为。但是,只有当他们点击实际行,而不是标题或行下表格中的空白空间时才这样做。

我们的系统中有这种类型的代码:

myTable.setOnMouseClicked(event -> {
            if (event.getClickCount() == 2) {
                MyDTO dto = myTable.getSelectionModel().getSelectedItem();
                if(dto != null) {
                    //Do my processing
                }
            }
        });

我们的QA测试人员选择了一行,然后双击空格或表格中的标题。这并没有取消选择记录,因此处理开始。

有没有办法确定此时是否发生了点击,或者我需要将代码移到行工厂?

0 个答案:

没有答案