java 获取鼠标绝对坐标_如何在Java窗口之外获取鼠标点击坐标

尽管有限:

为焦点事件添加AWTEventListener。只要你的应用程序在点击按钮之前就有焦点,你会收到焦点丢失的事件。然后查询指针位置。

限制是,当然,你的应用程序失去了重点。所以取决于你最终想要实现这一点可能没有用。

如果您不想失去焦点,那么您将不得不临时拍摄整个屏幕的屏幕截图,并显示在屏幕填充窗口中,照常浏览鼠标点击。

第一种方法证明:

import java.awt.AWTEvent;

import java.awt.MouseInfo;

import java.awt.Toolkit;

import java.awt.event.AWTEventListener;

import javax.swing.JFrame;

public class Application1 {

public static void main(String[] args) {

Toolkit.getDefaultToolkit().addAWTEventListener(

new Listener(), AWTEvent.MOUSE_EVENT_MASK | AWTEvent.FOCUS_EVENT_MASK);

JFrame frame = new JFrame();

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

}

private static class Listener implements AWTEventListener {

public void eventDispatched(AWTEvent event) {

System.out.print(MouseInfo.getPointerInfo().getLocation() + " | ");

System.out.println(event);

}

}

}

点击应用程序外部生成:

java.awt.Point[x=198,y=59] | java.awt.event.MouseEvent[MOUSE_EXITED, ...

java.awt.Point[x=976,y=503] | java.awt.FocusEvent[FOCUS_LOST, ...

第二点是在应用程序之外。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值