gpt4 book ai didi

java - 具有相同事件监听器的堆叠组件

转载 作者:行者123 更新时间:2023-12-01 15:20:02 25 4
gpt4 key购买 nike

我有一个 JPanel (A),其中包含另一个 JPanel (B)。每个面板都实现一个 MouseMotionListener 和一个 MouseListener。拖动时,仅内部/上部面板 (B) 响应此事件。因此,我从 A 中删除了 MouseMotionListener,从 B 中删除了 MouseListener。第二个测试显示,只有当光标位于 B 之外时,A 才会响应。

有没有一个解决方案可以让两个面板对同一个监听器使用react。我需要每个事件的 getX() 方法。每个面板应在拖动事件中返回另一个 x 值。因此,对于我来说,事件转发不是一个解决方案。

非常感谢...

最佳答案

我不认为 Swing 提供任何对事件冒泡的支持(意味着一个元素上的事件不会传输到其父元素)。解决此问题的方法是将父对象传递给子对象,并在子对象上发生事件时手动调用其事件处理程序(不太好,但它有效)。

关于java - 具有相同事件监听器的堆叠组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11066099/

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