2009-07-27 19 views
3

我正在嘗試使用碳api在OS X上執行一些操作,但在Google或Apple開發網站上找不到任何內容。在OS X上列出和查找窗口

理想情況下,我想找到一個函數,在屏幕上的某個位置找到窗口。看起來似乎有類似的功能,但其中一個說它只在當前進程中找到窗口,另一個說它是用於定位鼠標點擊的目的地。

假設沒有辦法做到這一點,我將如何去遍歷屏幕上的所有窗口。查找有關OS X窗口管理器如何工作的信息非常困難,因爲它沒有名稱,並且任何谷歌搜索都被操作系統Windows引用所壓制。它有嵌套窗口嗎?什麼是窗口列表?只有一個?每個過程都有嗎?你可以任意創建其中的很多嗎?我暫時猜測GetWindowList是我正在尋找的東西,但沒有例子,而且文檔都是模糊的「獲取下一個窗口」,沒有任何解釋或示例代碼的解釋。

如果有人能夠解釋我如何做到這一點,或者窗口管理員如何看待事物,或者指向我可以閱讀的地方,那就太棒了!

回答

4

我認爲你要找的是Quartz Window Services,它是Core Graphics框架的一部分。您可能需要從CGWindowListCreate()函數開始,獲取屏幕上窗口的ID號列表,然後您可以使用該列表獲取有關每個單獨窗口的更多信息。