You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:Python中不使用Alt+Tab切换到已打开指定应用的方案

解决方案:精准切换到指定已打开应用(无需Alt+Tab)

Alt+Tab依赖应用的最近使用顺序,无法精准定位目标窗口,以下是两种适用于Windows平台的可行方案,可直接定位并激活指定应用窗口:

方案1:使用pygetwindow(简洁易用)

pygetwindow是专门用于窗口控制的Python库,语法直观,适合快速实现需求。

步骤:

  1. 安装依赖库:
pip install pygetwindow
  1. 整合到你的代码中:
import pyautogui
import pygetwindow as gw

def start():
    # 根据窗口标题关键词定位Paint(中文系统用"画图",英文系统用"Paint")
    paint_windows = gw.getWindowsWithTitle("画图")
    if paint_windows:
        paint_window = paint_windows[0]
        # 若窗口处于最小化状态,先恢复正常显示
        if paint_window.isMinimized:
            paint_window.restore()
        # 激活目标窗口
        paint_window.activate()
    else:
        print("未找到已打开的Paint应用")
        return

    pyautogui.click(x, y) #点击工具
    pyautogui.click(x, y) #选择颜色
    pyautogui.click(x, y) #绘制背景

方案2:使用win32gui(底层Windows API,兼容性更强)

如果pygetwindow出现兼容性问题,可直接调用Windows原生API实现,需要安装pywin32库:

步骤:

  1. 安装依赖库:
pip install pywin32
  1. 代码实现:
import pyautogui
import win32gui
import win32con

def get_window_handle(window_title_keyword):
    """根据标题关键词查找目标窗口句柄"""
    def callback(handle, extra):
        if window_title_keyword.lower() in win32gui.GetWindowText(handle).lower():
            extra.append(handle)
        return True
    handles = []
    win32gui.EnumWindows(callback, handles)
    return handles[0] if handles else None

def start():
    # 查找Paint窗口句柄(中文系统填"画图",英文系统填"Paint")
    paint_handle = get_window_handle("画图")
    if not paint_handle:
        print("未找到已打开的Paint应用")
        return

    # 恢复最小化的窗口
    if win32gui.IsIconic(paint_handle):
        win32gui.ShowWindow(paint_handle, win32con.SW_RESTORE)
    # 将窗口置为前台(激活)
    win32gui.SetForegroundWindow(paint_handle)

    pyautogui.click(x, y) #点击工具
    pyautogui.click(x, y) #选择颜色
    pyautogui.click(x, y) #绘制背景

注意事项:

  • 窗口标题匹配需对应系统语言:中文系统的Paint窗口标题为"画图",英文系统为"Paint",请根据自身系统调整关键词。
  • 若目标应用存在多个窗口实例,getWindowsWithTitle或EnumWindows会返回多个结果,可根据需求选择对应窗口(比如取第一个,或精确匹配完整标题)。

内容的提问来源于stack exchange,提问作者Chernobot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 13:20:27