我想用Python读取其他程序中的文本标签。我想我必须使用WM_GETTEXT,但我不知道如何在互联网上找不到任何东西。我的程序获取活动窗口,但不读取文本标签。所以我希望有人能帮助我。Python:如何从另一个程序窗口获取文本标签?
编辑:我已经添加了缓冲区和SendMessage部分。例如,我可以从编辑器中获取文本,但不能从我试图获取文本标签的程序中获取。
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)
2013-01-24
Xirama
+0
如果单击您希望从中获取文本窗口中(所以它变成了前台窗口)做你的应用程序报告正确的价值? –
+0
不,它只显示空白。变量result返回一个空字符串。标题变量返回正确的窗口名称。 –
+0
标题不超过20个字符,是吗? –