任何人都知道如何從Windows應用程序的QWidget窗口中獲取文本?這是什麼樣子,當我看着它使用Winspector:從「QWidget」獲取信息
http://www.tightpoker.com/images/ftplobby.jpg
我會發布,作爲一個形象,但顯然新不允許用戶使用圖片代碼...
它找不到任何子類(即比賽列表)。我試圖找到一種方法來調用正在編寫的自定義應用程序中的列表來收集數據。
任何人都知道如何從Windows應用程序的QWidget窗口中獲取文本?這是什麼樣子,當我看着它使用Winspector:從「QWidget」獲取信息
http://www.tightpoker.com/images/ftplobby.jpg
我會發布,作爲一個形象,但顯然新不允許用戶使用圖片代碼...
它找不到任何子類(即比賽列表)。我試圖找到一種方法來調用正在編寫的自定義應用程序中的列表來收集數據。
一旦在目標應用程序中運行了一些代碼,就可以從QApplication::topLevelWidgets()開始使用QObject層次結構,並使用QMetaObject::userProperty()。
如果您沒有在目標應用程序中運行的代碼,則無法知道。由於Squish和KD Executor(Google for KDExecutor,使用Google緩存,該站點目前正在修改)都需要向AUT(被測應用程序)注入代碼(通過預加載),因此我很確定也沒有辦法。
Qt現在提供QAccessibility類很長一段時間,允許Narrator(Start-> Run ...-> narrator)或Jaws等屏幕閱讀器處理控件並將其讀取給用戶。據我所知,所有標準小部件都支持這個函數,因爲qt4附近的某個地方。不幸的是,當開發人員決定實施基於QWidged的自己的控件並且沒有實現QAccessibleInterface時,那麼創建的類是「靜音」的,並且對於任何類型的檢查員或屏幕閱讀器都是不可見的。它只是屏幕上的一組像素。
嘗試運行解說器並注意它在打開ftplobby後會說什麼,「...不包含其他已知控件」意味着您可能運氣不好,應該開始查看OCR和模擬點擊。
感謝您的回覆。由於這是在數據抓取的基礎上運行的,因此我沒有任何代碼在目標應用程序中運行。 你基本上是說在啓動應用程序時你需要做某種注入或掛鉤? – natarem 2009-07-10 21:57:07