我想检测给定点是否在特定菜单上。
我尝试通过以下代码执行此操作,但它会出现空引用错误。
(错误 - java.lang.NullPointerException)
// 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;
}
}
答案 0 :(得分:1)
graphic
property只是在菜单文本之外显示的一些内容。这可以是例如是一个保存菜单的软盘。如果没有此类内容,则此属性为null
。这导致您的例外。
如果MenuBar
中的MenuButton
s之一包含使用lookupAll
的节点来查找节点(如果已在{{1上执行了布局),您可以找到}}):
MenuBar