Python获取与设置Windows当前窗口

在Python做屏幕自动化的过程中,难免需要涉及对窗口的操作,理论上都可以用鼠标键盘+屏幕识别(对人的完全模拟)来实现,但具体做起来实在有点麻烦。如果不考虑跨平台的兼容性,那么引入win32gui库,可以省很多事。

获取当前窗口

import win32gui
# 获取窗口句柄
hwnd = win32gui.GetForegroundWindow()
# 获取窗口标题
win32gui.GetWindowText(hwnd)

查找窗口

import win32gui
# 根据标题查找窗口
title = '文档'
hwnd = win32gui.FindWindow(None, title)

设置当前窗口

import win32gui
# 根据句柄
hwnd = 5378992 #句柄应该是其他方法获取到的
win32gui.SetForegroundWindow(hwnd)

完整示例

import time
import win32gui


def get_current_window():
    return win32gui.GetForegroundWindow()


def set_current_window(hwnd):
    win32gui.SetForegroundWindow(hwnd)


def get_window_title(hwnd):
    return win32gui.GetWindowText(hwnd)


def get_current_window_title():
    return get_window_title(get_current_window())


def find_window_by_title(title):
    try:
        return win32gui.FindWindow(None, title)
    except Exception as ex:
        print('error calling win32gui.FindWindow ' + str(ex))
        return -1
  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值