gpt4 book ai didi

java - 防止父节点也处理事件

转载 作者:行者123 更新时间:2023-12-01 09:22:50 27 4
gpt4 key购买 nike

我有一个相当简单的问题,但我不明白这是为什么......我有一个以 AnchorPane 作为父节点的 Scene 。每当我点击此Pane时,它都会创建自定义Circle。这按预期工作。
这些自定义Circle也有事件处理程序。
如果我点击一个圆圈,该事件处理程序将被触发,但父级的事件处理程序也会被触发,从而创建一个新的自定义Circle

你知道我可能做错了什么吗?

最佳答案

事件会自动传递到父 Node(或根 NodeScene),除非您在事件中使用它们 child 的处理者。要消费该事件,请调用 Event.consume()Circle的事件处理程序中,例如

pane.setOnMouseClicked(evt -> {
Circle circle = ...

pane.getChildren().add(circle);

circle.setOnMouseClicked(event -> {
event.consume();
// TODO: circle specific event handling
});
});

关于java - 防止父节点也处理事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40048453/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com