我正在尝试从另一个应用程序导入/提取表单的值,以便在使用python和pywin32的代码中使用。你知道吗
使用Spy++我计算出了需要针对的元素的句柄,但是我无法计算如何从元素中获取文本。你知道吗
目标应用程序的结构方式:
top app level
(no name) class: MDIClient (this is the centerWidget)
(no name) class: ThunderRT6FormDC (occupies same space as centerwidget)
(Ticket) class: ThunderRT6Frame (Frame that holds all fields to extract from)
(no name) class: NumEdit/DateEdit/TextEdit... (fields to import)
(Information) class ThunderRT6Frame (2nd frame with fields)
(no name) class: NumEdit/DateEdit/TextEdit... (fields to import)
(Process) class ThunderRT6Frame (3rd frame with fields)
(no name) class: NumEdit/DateEdit/TextEdit... (fields to import)
f = win32gui.FindWindow('ThunderRT6MDIForm', 'ApplicationName')
ex = win32gui.FindWindowEx(f, 0, 'MDIClient', None)
exx = win32gui.FindWindowEx(ex, 0, 'ThunderRT6FormDC', None)
exxx = win32gui.FindWindowEx(exx, 0, 'ThunderRT6Frame', None)
exxxx = win32gui.FindWindowEx(exxx, 0, 'NumEdit', None)
exxxx是我要从中提取标题/文本的句柄/元素。 我确信FindWindowEx在搜索Windows时不是正确的函数,但是我必须使用什么函数呢?你知道吗
如果树中的两个“连续”窗口(例如ex和exx)之间的关系是一个父-子窗口,那么[MS.Docs]: FindWindowExW function(用
win32gui.FindWindowEx
包装)就应该起作用。你知道吗另一种方法是使用[MS.Docs]: EnumChildWindows function(
win32gui.EnumChildWindows
)-同时检查EnumWindows。有关详细信息,您可以查看:
在那里,您可以使用GetWindowTextW(
win32gui.GetWindowTextW
)来获取所需窗口的标题。你知道吗相关问题 更多 >
编程相关推荐