[英]pywinauto ribbon menu returns no control identifiers
我正在嘗試自動化一系列與給定軟件有關的任務。 我已經設法使用鍵盤控件“控制它”,但是為了擴展腳本的復雜性,我需要訪問功能區菜單。
到目前為止,我的代碼如下:
windows = pwa.Desktop(backend="win32").windows()
running_windows = [window.window_text() for window in windows]
midas_title = ""
target_title = "Civil"
for window in running_windows:
if target_title in window:
midas_title += window
else:
pass
app = pwa.Application().connect(title=midas_title)
app[midas_title].set_focus()
app.MidasGenMainFrmClass['MIDAS/Civil'].print_control_identifiers()
app.MidasGenMainFrmClass['BCGPRibbonBar:40000000:8:10003:10'].print_control_identifiers()
根據BCGPRibbonBar:40000000:8:10003:10
的上/左和下/右坐標判斷,這似乎是我想要訪問的菜單,以便我可以單擊此功能區中的“結果”按鈕(我的最終目標),但是當我執行print_control_identifiers()
時,我得到的輸出是這樣的:
BCGPRibbonBar:40000000:8:10003:10 - 'MIDAS/Civil' (L0, T0, R1920, B174)
['MIDAS/CivilBCGPRibbonBar:40000000:8:10003:10', 'BCGPRibbonBar:40000000:8:10003:10', 'MIDAS/Civil']
child_window(title="MIDAS/Civil", class_name="BCGPRibbonBar:40000000:8:10003:10")
我對此很陌生,但似乎功能區沒有孩子?
希望這是足夠的信息,但如果有任何遺漏,請告訴我。
如果有人知道我可能做錯了什么,那將非常有幫助。
使用backend="uia"
而不是backend="win32"
。 功能區控件僅對 UIA 后端可見。 Application(backend="uia")
也是必須的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.