java - 忽略从轻量级组件生成的 AWT 组件上的 Java 鼠标事件

标签 java swing awt mouseevent

我有一个在 AWT 组件之上打开的 JFileChooser(我们使用 GLCanvas 进行一些 openGL 渲染)。如果我双击文件选择器中的图标将其关闭,鼠标点击将传递给 GLCanvas。我读到轻量级组件上的鼠标事件将传递给重量级组件,但是有没有办法检测这种情况何时发生?双击 GLCanvas 执行另一个操作,我不希望用户只是双击关闭对话框时发生这种情况。

最佳答案

您可以为轻量级组件上的鼠标事件创建事件处理程序,然后在它们内部不执行任何操作,这应该会阻止传播到较重的组件。

类似于:

    public void mousePressed(MouseEvent e) {}

    public void mouseReleased(MouseEvent e) {}

    public void mouseEntered(MouseEvent e) {}

    public void mouseExited(MouseEvent e) {}

    public void mouseClicked(MouseEvent e) {}

关于java - 忽略从轻量级组件生成的 AWT 组件上的 Java 鼠标事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6945938/

相关文章:

java - 为什么面板不显示?

Java如何绘制和填充有孔的多边形

java - 如何在 CustomAdapter 类中调用新 Intent ?

java - 在 jList 中加载文本区域行

java - 在NetBeans中编译/运行EJB代码(入门)

java - 听法

java - JPanel重绘问题

java - 让 JFrame 具有相同的 JMenuBar 实例

java - 在 Android 中使用 Google 帐户登录

JavaFX 11 : IllegalAccessError when creating Label