Как получить доступ к всплывающему меню из скрытого значка на панели задач - PullRequest
0 голосов
/ 05 ноября 2019

Я использую следующий код, чтобы получить доступ к скрытому значку и показать его всплывающее меню и щелкнуть пункт меню «Выход из системы»:

import time
from pywinauto.application import Application

app = Application(backend="uia").connect(path="explorer.exe")
st = app.window(class_name="Shell_TrayWnd")
t = st.child_window(title="Notification Chevron").wrapper_object()
t.click()
time.sleep(0.25)

list_box = Application(backend="uia").connect(class_name="NotifyIconOverflowWindow")
list_box_win = list_box.window(class_name="NotifyIconOverflowWindow")
list_box_win.wait('visible', timeout=30, retry_interval=3)
list_box_win.child_window(title="Citrix Workspace").click_input(button='right').menu_item('Sign Out').click_input()

Отображается всплывающее меню, но я получил ошибку: AttributeError: 'NoneType' object has no attribute 'menu_item'

Когда я пытался добавить этот код (вместо .menu_item('Sign Out').click_input()):

connector = Application()
connector.connect(path="C:\\Program Files (x86)\\Citrix\\ICA Client\\SelfServicePlugin\\SelfService.exe")
connector.PopupMenu.MenuItem("Sign Out").ClickInput()

путь отражает приложение, которое отвечает за значок в системном трее. Я получил ошибку: MatchError: Could not find 'PopupMenu' in 'dict_keys([])'. Таким образом, я могу получить доступ к пункту меню во всплывающем окне?

Кстати: он запускается на 64-битной Windows 10 с Python 3.6.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...