【发布时间】:2012-07-18 11:39:00
【问题描述】:
有什么方法可以获取桌面上活动窗口的标题和坐标? Window 可以属于任何进程,不一定属于我正在开发的进程。我想在 java 上做,可能需要调用一些原生 API。
【问题讨论】:
标签: java window coordinates
有什么方法可以获取桌面上活动窗口的标题和坐标? Window 可以属于任何进程,不一定属于我正在开发的进程。我想在 java 上做,可能需要调用一些原生 API。
【问题讨论】:
标签: java window coordinates
如果我错了,请有人纠正我,但如果原生 API 不是 java 的一部分,你将无法使用原生 API,这意味着你将无法找到纯 Java 解决方案。
您可以使用 JNI(Java 本地接口)使用 C/C++ 创建一个“链接”,这样您就可以使用 Java 的本地 API。 编辑:我相信 JNA(Java Native Access)是另一种可能的解决方案。
您也可以使用我相信已经支持 Windows API 的 C# 或 VB.net。
您要查找的函数可能是
GetForegroundWindow 获取窗口本身。
GetWindowRect 获取坐标。
(请注意,这些链接适用于 C++,C#/VB 可能以某种方式访问这些链接)
如我所说,要使用 Java,您必须以某种方式将本机 API 与 java '链接',因为仅 Java 不能。
这个关于获取窗口标题的问题可能有更好地解释 Java 对这类事情的限制的答案。
Get current active window's title in Java
【讨论】: