我正在尝试使用pywin32向(子)窗口内的ListBox控件发送消息(LB_SELECTSTRING)。我已经得到了窗口的句柄而没有问题,我也有父窗口的线程ID和进程ID。我的理解是控件的处理方式与windows类似,因为它们有自己的句柄,所以我试图找出如何使用其父句柄找到控件,似乎没有任何工作。
我的代码如下,它总是引发异常。
try:
_listbox1_hwnd = win32gui.FindWindowEx(_hwnd, None, "ListBox1", "Preferences")
if _listbox1_hwnd == 0:
raise Exception("Listbox1 wasn't found!")
except Exception as e:
print e
sys.exit(0)
我也试过使用win32ui FindWindow方法没有运气(即这也失败了)
try:
_listbox1_cwnd = win32ui.FindWindow("ListBox1", "Preferences")
if _listbox1_cwnd == 0:
raise Exception("Listbox1 wasn't found!")
except Exception as e:
print e
sys.exit(0)
答案 0 :(得分:1)
如果您发现Python语言更容易,为什么不使用pywinauto?我从未见过更简单的自动化工具它非常pythonic。
答案 1 :(得分:0)
什么是" ListBox1"?这看起来不适合列表框类名。使用Spy ++工具检查列表框类名。