java - 相对于 Frame 的鼠标坐标

标签 java swing mouse coordinates awt

我正在尝试绘制多边形,并希望能够单击我的框架以获取鼠标坐标,以便更快地将心理图像转换为 x/y 值。

我在用

System.out.println("("+ MouseInfo.getPointerInfo().getLocation().x +",
    "+ MouseInfo.getPointerInfo().getLocation().y +")"); 

但这给了我相对于我的实际屏幕的坐标,而不是我的 java 窗口。

如何使坐标相对于 Java 窗口显示?

最佳答案

您可以使用 SwingUtilties 在屏幕坐标和组件坐标之间进行转换类

convertPointFromScreen 方法将采用屏幕坐标并将其转换为相对于您提供的组件。

关于java - 相对于 Frame 的鼠标坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8014827/

相关文章:

java - 如何在eclipse中用sql数据库表导出war文件

java - 将新数据从 Java 程序发送到 Web 浏览器

java - 什么是映射缓冲池/直接缓冲池以及如何增加它们的大小?

linux - 如何使我的 Boot.java 类作为 main 类始终位于我有其他进程导致 Java 出现问题的地方?

objective-c - 部分隐藏的 NSView 上的鼠标进入/退出事件

javascript - Paul Irish,他是怎么做到的?

java - Apache HttpClient 4.5.5 - GET 请求后响应的 header 错误

java - 有没有办法让 JTextArea 集中在 Java 中的某个文本元素上?

java - 沿鼠标光标方向画线

java - 处理 JDialog 和 JToggleButton 的状态和事件序列