检测MouseClick

时间:2016-03-24 12:33:58

标签: java javafx

我在javaFX中使用 TabPane 这里是一张图片:

enter image description here

当用户右键单击选项卡的标签时,应显示服装contextMenu。但我不想为每个选项卡添加.setContextMenu(...)而是使用以下内容:

tabPane.setOnMouseClicked(m -> {
        if (m.getButton() == MouseButton.SECONDARY) {
            Node pick = m.getPickResult().getIntersectedNode();
            for (Tab tab : getTabs()) {
                if (pick.toString().contains(tab.getText())) {

                    contextMenu.show(tab, m.getScreenX(), m.getScreenY());
                    break;
                }

            }
        }
    });

但我无法弄明白如何使用 pickResult

为什么 .i我这样做是因为标签可能是变形,我不想花费这么多内存为每个标签添加一个新的ContextMenu所以我每次只使用一个带有不同标签的标签。

0 个答案:

没有答案