我們正在開發一個應用程序,幫助閱讀障礙人士。用戶可以通過將鼠標光標懸停在屏幕上來讓應用程序大聲讀出屏幕上的任何文本(菜單,按鈕標籤,窗口標題等)(我知道很多操作系統已經可以做到這一點,但這是一個教學工具,我們正在做一些額外的東西)。我們有一個適用於Windows的工作應用程序,現在我們希望在OS X中做類似的工作。基本上我們想要實現類似於OS X的VoiceOver功能的東西。我的問題是如果有一個我們可以用來訪問UI元素的API在OS X中(例如Windows的Microsoft Active Accessibility)。我一直在閱讀有關Mac OS X輔助功能的內容,但這看起來更像是一個API,用於在您自己的應用程序中啓用輔助功能,而不是從操作系統(或其他應用程序)訪問元素。我錯了嗎?用於訪問Mac OS X中的UI元素的API
回答
輔助功能還允許您訪問其他應用的UI元素。查看Apple網站上的UIElementInspector sample code。它非常接近你想要做的事情。
是的,它被稱爲Accessibility API。這是很好的記錄在這裏:
https://developer.apple.com/library/mac/documentation/Accessibility/Conceptual/AccessibilityMacOSX/
http://developer.apple.com/library/mac/#documentation/Accessibility/Reference/AccessibilityLowlevel/
您的第一個鏈接現在是404。 –
修復感謝... –
它再次404。 –
- 1. 適用於Mac OS X的AirPlay API
- 2. 如何在mac os中訪問docker(v1.9.0)遠程休息API x
- 3. MySQL的Mac OS X問題
- 4. Mac OS X,Apache,阻止外部訪問
- 5. mac os x訪問framebuffer原始數據
- 6. MAC OS X Xampp訪問被禁止
- 7. 訪問UI元素
- 8. 訪問UI元素
- 9. 用於Mac OS X的Fortran調試器
- 10. 用於Mac OS X的替代CADisplayLink
- 11. 適用於Mac OS X的openAL教程
- 12. 適用於Mac OS X的構建
- 13. 適用於Mac OS X的UIPopoverController?
- 14. 用於mac OS X 10.6.3的Xcode?
- 15. 適用於Mac OS X的MapKit?
- 16. Tkinter的扶養適用於Mac OS X
- 17. 適用於DirectShow的Mac OS X,GraphEdit
- 18. 適用於Mac OS X的ldconfig
- 19. 適用於Mac OS X的乳膠
- 20. 適用於Mac OS X的Pascal IDE
- 21. 在mac os上以編程方式訪問Python中的郵件的API X
- 22. 用於通用密碼的Java的Mac OS X鑰匙串訪問
- 23. 如何在mac os x中訪問mail.app中的註釋?
- 24. 如何訪問ItemsControl中的UI元素?
- 25. .dll等同於Mac OS X
- 26. Mac OS X上的PHP和MySQL:拒絕GUI用戶訪問
- 27. 訪問從Java的Mac OS X應用程序菜單
- 28. NSURL訪問可可中的網絡共享文件 - Mac OS X
- 29. 在Mac OS X上訪問R中的MySQL數據庫
- 30. C++ #ifdef Mac OS X問題
感謝名單,這正是我之後。但是,如果我正確理解這一點,我只能使用此API從Cocoa(和Carbon)應用程序提取數據,因爲信息是由框架提供的,而不是它自己的操作系統。這是否意味着我無法從與Cocoa無關的應用程序(例如Java應用程序)獲取任何信息? – pajevic
@NobleK:我真的不知道。我不會每天與很多GUI Java應用程序進行交互。我懷疑它可能會起作用,因爲Apple創建了自己定製的JVM分支,主要是爲了使其更好地集成到操作系統中。無論如何,系統GUI框架與操作系統非常接近。 Java是我能想到的唯一主要的應用程序*可能*不會通過Cocoa。所有的跨平臺窗口工具包都通過Mac上的Cocoa或Carbon。製作圖形應用程序並沒有真正的低級方法。 – Chuck
在Windows上Swing應用程序基本上顯示爲黑盒子,您無法使用Windows的UIAutomation API檢查組件,該API是Windows的Accessibility API的更新版本。如果您有關於swing應用程序和可訪問性API的任何信息,我很樂意聽到它。 由於使用SWT和JFace後退通常使用本地控件,因此對可訪問性API是可視化的。 –