【pywinauto】获取托盘中的图标

196 阅读1分钟

下面的代码将遍历系统托盘中可用的应用程序,并通过检查其名称来单击所需的应用程序。

from pywinauto.application import Application
import time

app = Application(backend="uia").connect(path="explorer.exe")
taskBar = app.window(class_name='Shell_TrayWnd')
trayIcon = taskBar["Notification Chevron"].wrapper_object()
trayIcon.click()

time.sleep(0.25)

trayWindowContainer = Application(backend="uia").connect(class_name="NotifyIconOverflowWindow")
trayWindow = trayWindowContainer.window(class_name="NotifyIconOverflowWindow")
trayWindow.wait('visible', timeout=30, retry_interval=3)

breakLoop: bool = False
for notification_area in trayWindow.children():
    for app_in_tray in notification_area.children():
        if "<App_name>" in str(app_in_tray):
            app_in_tray.click_input()
            breakLoop = True
            break
            if breakLoop:
                break