【问题标题】:How to target mouse events to the deeper JComponents while it is targeted to a JComponent that has a mouse listener当鼠标事件针对具有鼠标侦听器的 JComponent 时,如何将鼠标事件定位到更深层的 JComponent
【发布时间】:2017-04-19 21:25:53
【问题描述】:

在 Swing 中,鼠标事件会自动定位到具有鼠标侦听器的最深组件。 当有一个组件具有鼠标侦听器并添加在其他组件之上时,如何再次将它们定位到更深的组件?

应该在不将组件设置为不可见或移除其鼠标侦听器的情况下完成它,因为它是一个透明的JPanel,应该根据鼠标事件执行一些工作。

dispatchEvent() 仅在目标组件已知时有用(即下一个更深的组件)。

【问题讨论】:

    标签: java swing event-handling awt jcomponent


    【解决方案1】:

    dispatchEvent() 仅在目标组件已知时有用(即下一个更深的组件)。

    您可以使用getParent() 方法来获取下一个更深的组件。

    您也可以使用SwingUtillities.getAncestorOfClass(...) 来查找特定的父类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-15
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多