0
此代碼我沒有得到的第一個可用RICHEDIT60W:無法從第一RICHEDIT60W子標題中的Lync
from pywinauto.application import Application
app = Application().connect(class_name='CommunicatorMainWindowClass')
window = app.window(class_name='CommunicatorMainWindowClass')
window.NetUINativeHWNDHost.NetUIHWND.print_control_identifiers()
print()
rich_edit = window.NetUINativeHWNDHost.NetUIHWND.NetUICtrlNotifySink.RICHEDIT60W
print("rich_edit:", rich_edit.WindowText())
控制檯:
Control Identifiers: NetUIHWND - '' (L162, T378, R562, B957) ['', '1', 'NetUIHWND', '0'] child_window(class_name="NetUIHWND") | | NetUICtrlNotifySink - '' (L186, T408, R537, B425) | ['2', 'NetUICtrlNotifySink1', 'NetUICtrlNotifySink', 'NetUICtrlNotifySink0'] | child_window(class_name="NetUICtrlNotifySink") | | | | RICHEDIT60W - '///' (L186, T408, R537, B425) | | ['RICHEDIT60W0', '///RICHEDIT60W', 'RICHEDIT60W1', '///', 'RICHEDIT60W'] | | child_window(title="///", class_name="RICHEDIT60W") | | RICHEDIT60W - '///' (L186, T408, R537, B425) | ['RICHEDIT60W0', '///RICHEDIT60W', 'RICHEDIT60W1', '///', 'RICHEDIT60W'] | child_window(title="///", class_name="RICHEDIT60W") | | NetUICtrlNotifySink - '' (L184, T548, R515, B562) | ['3', 'NetUICtrlNotifySink2'] | child_window(class_name="NetUICtrlNotifySink") | | | | RICHEDIT60W - 'qwerty' (L184, T548, R515, B562) | | ['RICHEDIT60W2', 'qwerty', 'qwertyRICHEDIT60W'] | | child_window(title="qwerty", class_name="RICHEDIT60W") | | RICHEDIT60W - 'qwerty' (L184, T548, R515, B562) | ['RICHEDIT60W2', 'qwerty', 'qwertyRICHEDIT60W'] | child_window(title="qwerty", class_name="RICHEDIT60W") | | NetUICtrlNotifySink - '' (L162, T378, R162, B378) | ['4', 'NetUICtrlNotifySink3'] | child_window(class_name="NetUICtrlNotifySink") rich_edit: qwerty
按列表中的元素,第一個必須是「///」而不是「qwerty」
問題是什麼?
如何獲得帶有「///」的項目?
以後我可以看看,但最好使用'應用程序(後端=「UIA」)'爲Lync。閱讀[入門指南](https://pywinauto.readthedocs.io/en/latest/getting_started.html)瞭解更多詳情。 –