我有这个部分场景图树:
CustomPane (with onMouseClicked Handler)
→ ChildNode (with onMousePressed Handler)
当我在 ChildNode 中捕获 MousePressed 事件时,我可以使用它,这样父级就不会收到 MousePressed 事件。但我想使用关联的 MouseClicked 事件。因此,在 Child 上按下鼠标不会在 Parent 上触发 MouseClicked 事件。
您可以添加ChildNode#onMouse...
将消耗所有事件的特定处理程序。
或提供您自己的EventDispatcher
:
child.setEventDispatcher(new EventDispatcher() {
@Override
public Event dispatchEvent(Event event, EventDispatchChain tail) {
boolean valid = myValidationLogicForEvents(event);
return valid ? tail.dispatchEvent(event) : null;
}
});