2011-07-14 53 views
0

初學者python在這裏學習。我有一個問題,我曾嘗試谷歌,但我只是不能想出正確的方式來問幾句話(部分原因是我不知道正確的術語)。Python小部件/光標檢測?

我該如何獲得python來檢測其他小部件?例如,如果我想要一個腳本來檢查並查看當我點擊鼠標時,如果該點擊將焦點放在(例如)網站上的一個入口小部件上。我一直試圖讓它在Tkinter中工作,我甚至無法弄清楚哪裏開始。

我已經看到了這一點:

focus_displayof(self) 
    Return the widget which has currently the focus on the 
    display where this widget is located. 

但該函數的返回值似乎有些曖昧長的數字我不能破譯,再加上它只能在自己的應用程序的工作。

任何方向將不勝感激。 :)

回答

2

你的意思是在你自己的GUI代碼或其他應用程序的/網站? 聽起來像你正在尋找一個GUI驅動程序GUI測試/自動化驅動程序。這裏有很多,有些很棒,有些很糟糕,很多都被遺棄了。如果你告訴我們更多關於你想要的東西,這將有助於縮小選擇的範圍。 這是用於測試還是自動化,還是您要自己開動鼠標並按下按鈕,而只是想要觀察GUI中引擎蓋下發生了什麼?

>如何讓Python檢測其他小部件?

在機器上還是在瀏覽器中?如果在一臺機器上,哪個平臺:Linux/Windows(哪個)/ Mac? 如果在瀏覽器中,哪個瀏覽器(和主要版本)?

>但是對於函數的返回值似乎有些曖昧長的數字我不能破譯

使用多頭爲資源處理是意料之中的事,但良好的圖形用戶界面驅動程序還用繩子工作/正則表達式匹配窗口和按鈕名稱。

>加上它只適用於它自己的應用程序。

你是什麼意思,你期待它迴歸你?您應該能夠查找該GUI對象並訪問其標題。尋找一個與窗口和按鈕名稱一起工作的GUI驅動程序。

這是一個list,閱讀它,看看有什麼用處。我在Win32下使用AutoIt,它很好用,廣泛使用和積極維護;它可以從Python中調用(通過subprocess)。 這裏是comparisons by the author of PyWinAuto on his and similar tools。讀一讀他的criticisms of its structure from 2010。如果這些都不是你想要的,至少你現在有詞彙來告訴我們會是什麼...

+0

嘿非常感謝你的答案。 「桂司機」似乎是我正在尋找的。 :)我發現了一個叫做「pywinauto」的東西,它做了很多我想要的東西,但是我不認爲它與python 2.7兼容。但我會繼續尋找。 –

+1

我的榮幸。讓我們知道你最終決定哪一個以及爲什麼選擇它。您仍然沒有告訴我們您的平臺是Linux,Windows還是瀏覽器。 – smci