我想用Python讀取其他程序中的文本標籤。我想我必須使用WM_GETTEXT,但我不知道如何在互聯網上找不到任何東西。我的程序獲取活動窗口,但不讀取文本標籤。所以我希望有人能幫助我。Python:如何從另一個程序窗口獲取文本標籤?
編輯:我已經添加了緩衝區和SendMessage部分。例如,我可以從編輯器中獲取文本,但不能從我試圖獲取文本標籤的程序中獲取。
我有下面的代碼,我發現這裏的計算器(Get text from popup window):
import win32gui
import time
while True:
window = win32gui.GetForegroundWindow()
title = win32gui.GetWindowText(window)
if 'GLS Exportdatei' in title:
control = win32gui.FindWindowEx(window, 0, 'static', None)
buffer = win32gui.PyMakeBuffer(20)
length = win32gui.SendMessage(control, win32con.WM_GETTEXT, 20, buffer)
result = buffer[:length]
print result
time.sleep(1)
如果單擊您希望從中獲取文本窗口中(所以它變成了前臺窗口)做你的應用程序報告正確的價值? –
不,它只顯示空白。變量result返回一個空字符串。標題變量返回正確的窗口名稱。 – Xirama
標題不超過20個字符,是嗎? –