2010-07-16 68 views

回答

0

Accessibility framework開始。屏幕閱讀器的許多鉤子在這裏也很有用。特別看看UIElementInspector樣本和NSAccessiblity protocol

還有Quartz Window services,它可以很容易地給你一個屏幕上的所有窗口的列表。不幸的是,它並沒有像窗口焦點這樣的概念(只是關卡),而且我也不知道在關卡變化時從它那裏獲取通知的方法。你可以做一些事情,比如進入Quartz Event框架來捕獲Cmd-Tab等,但這很複雜和脆弱。不幸的是no good way將一個CGWindowID轉換爲一個AXUIElementRef(該帖子是10.5,但我不知道在10.6中添加了什麼來改進這一點)。但希望你可以通過輔助功能框架來做你需要的一切。

0

您可能需要使用

[NSWorkspace runningApplications] 

,讓你運行的所有應用程序的列表,並觀看

[NSRunningApplication currentApplication] 

當用戶切換到一個新的應用程序,以跟上知道哪一個最近被使用。