java - 在组件外部获取鼠标事件

时间:2010-01-20 12:03:16

标签: java mouse location frame drag

我遇到与人here相同的问题,因为我需要在OS X上拖动时跟踪帧位置。问题尚未解决,所以:

我怎么告诉一个框架,它的(OS-native)标题栏上发生了鼠标按下事件,或者更常见的是,屏幕上某处发生了鼠标按下事件?

2 个答案:

答案 0 :(得分:2)

自java 1.5以来

import java.awt.MouseInfo;

public class Mouse {
    public static void main(String[] args) {
        while ( true ) {
            System.out.println( MouseInfo.getPointerInfo().getLocation() );
        }
    }
}

编辑:

原生键盘鼠标挂钩

http://www.jotschi.de/?p=90

答案 1 :(得分:0)

使用纯Java,你永远不能告诉它(OS原生)标题栏上发生了鼠标停止事件,或者对于那种情况,你应用程序窗口之外的任何事件(标题栏除外)。

重要的是要理解作为AWT / Swing中的程序员,您的上下文,领域和权力只存在于应用程序窗口中。 最佳镜头是使用JNI。