2012-03-27 105 views
0

有沒有什麼方法可以在桌面上獲取活動窗口的標題和座標?窗口可以屬於任何進程,不一定是我正在開發的那個進程。我想用java來完成,可能需要調用一些本地API。使用java桌面上的活動窗口的座標

回答

0

有人糾正我,如果我錯了,但如果它不是Java的一部分,你將不能夠使用Java的本地API,這意味着你將無法找到一個純粹的Java解決方案。

您可以使用JNI(Java本地接口)使用C/C++創建「鏈接」,並允許您使用Java中的本機API。編輯:JNA(Java本地訪問)是我相信的另一種可能的解決方案。

你也可以使用C#或VB.net,我相信已經支持Windows API。

您正在查找的功能可能是
GetForegroundWindow以獲取窗口本身。
GetWindowRect獲取座標。
(請注意,這些鏈接是爲C++,C#/ VB也可能會訪問那些以某種方式)

供您使用Java中,你將有,正如我所說的,莫名其妙的「鏈接」原生API與因爲Java本身不能。


關於獲取窗口標題的這個問題可能有答案,可以更好地解釋Java對這類事物的限制。
Get current active window's title in Java