Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检测给定点是否在特定菜单上_Java_Javafx_Javafx 8 - Fatal编程技术网

Java 如何检测给定点是否在特定菜单上

Java 如何检测给定点是否在特定菜单上,java,javafx,javafx-8,Java,Javafx,Javafx 8,我想检测给定点是否在特定菜单上 我试图通过以下代码来实现这一点,但它给出了null引用错误 (错误-java.lang.NullPointerException) just是菜单文本之外显示的一些内容。例如,这可能是用于保存菜单的软盘。如果没有此类内容,则此属性为null。这将导致您的异常 如果菜单栏中的其中一个包含用于查找节点的节点(前提是已在菜单栏上执行了布局),则可以查明: 在哪一行获得空指针异常?它将节点m返回为空,在if处出错(m.contains(m.screenToLocal(p)

我想检测给定点是否在特定菜单上

我试图通过以下代码来实现这一点,但它给出了null引用错误

(错误-java.lang.NullPointerException)

just是菜单文本之外显示的一些内容。例如,这可能是用于保存菜单的软盘。如果没有此类内容,则此属性为
null
。这将导致您的异常

如果
菜单栏
中的其中一个包含用于查找节点的节点(前提是已在
菜单栏
上执行了布局),则可以查明:


在哪一行获得空指针异常?它将节点m返回为空,在if处出错(m.contains(m.screenToLocal(p)){并非每个菜单都有一个
图形
。图形是除了菜单文本之外还包含的一些内容,例如保存菜单项的软盘图像……它适用于选项卡标题
    // p : is point
    // f : is flag (boolean variable)
    for (Menu menu : menuBarMain.getMenus()) {
        Node m = menu.getGraphic();
        if (m.contains(m.screenToLocal(p))) {
            f = true;
            break;
        }
    }
for (Node menu : menuBarMain.lookupAll(".menu")) {
    if (menu.contains(menu.screenToLocal(p))) {
        f = true;
        break;
    }
}