java - 如何捕获 JFrame/Swing 中的所有鼠标事件?

标签 java swing

我有一个 JFrame,它有大量不断变化的子组件。 (很多层)有没有办法为所有的鼠标事件添加一个监听器?像 KeyEventDispatcher 这样的东西?

最佳答案

使用 AWTEventListener 过滤掉鼠标事件:

long eventMask = AWTEvent.MOUSE_MOTION_EVENT_MASK + AWTEvent.MOUSE_EVENT_MASK;
Toolkit.getDefaultToolkit().addAWTEventListener( new AWTEventListener()
{
    public void eventDispatched(AWTEvent e)
    {
        System.out.println(e);
    }
}, eventMask);

关于java - 如何捕获 JFrame/Swing 中的所有鼠标事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1186333/

相关文章:

java - Swing:从 TableModel 捕获异常

Java GUI 帮助(JFrame、JButton 等)

java - 服务器上很少使用安全管理器?

java - 鸭子类型(duck typing)和泛型编程

java - Swing 部件重量轻?

java - Android TextView 被重力=中心切断

Java 反射 ~ 设置原始类型的内部对象值

java - JTree 禁用/覆盖 TransferHandler 键盘操作

java - 如何在 java gui 中调整背景图像的大小?

java - 从 JFrame 中的 JLabel 中删除图像