Python如何设置指定窗口为前台活动窗口

 更新时间:2020年08月12日 09:23:42   作者:ta叫我小白  
这篇文章主要介绍了Python如何设置指定窗口为前台活动窗口,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Python程序运行时,打开了多个窗口,使用win32gui模块可以设置指定的某一个窗口为当前活动窗口。

import re, time
import webbrowser
import win32gui, win32con, win32com.client
 
 
def _window_enum_callback(hwnd, wildcard):
  '''
  Pass to win32gui.EnumWindows() to check all the opened windows
  把想要置顶的窗口放到最前面,并最大化
  '''
  if re.match(wildcard, str(win32gui.GetWindowText(hwnd))) is not None:
    win32gui.BringWindowToTop(hwnd)
    # 先发送一个alt事件,否则会报错导致后面的设置无效:pywintypes.error: (0, 'SetForegroundWindow', 'No error message is available')
    shell = win32com.client.Dispatch("WScript.Shell")
    shell.SendKeys('%')
    # 设置为当前活动窗口
    win32gui.SetForegroundWindow(hwnd)
    # 最大化窗口
    win32gui.ShowWindow(hwnd, win32con.SW_MAXIMIZE)
 
 
if __name__ == '__main__':
  webbrowser.open("https://www.baidu.com/")
  time.sleep(1)
  win32gui.EnumWindows(_window_enum_callback, ".*%s.*" % config.window_name)#此处为你要设置的活动窗口名

说明一点:

有人会遇到这个错误(好吧,我也遇到了):

pywintypes.error: (0, 'SetForegroundWindow', 'No error message is available')

Stack Overflow上的解决方法是添加如下代码:

shell = win32com.client.Dispatch("WScript.Shell")
shell.SendKeys('%')

即先发送一个alt key事件,这个错误就会避免,后面的设置才会有效。

链接地址:

https://stackoverflow.com/questions/14295337/win32gui-setactivewindow-error-the-specified-procedure-could-not-be-found

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python中的字符转运算符、字符串处理方式

    python中的字符转运算符、字符串处理方式

    这篇文章主要介绍了python中的字符转运算符、字符串处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • python numpy中multiply与*及matul 的区别说明

    python numpy中multiply与*及matul 的区别说明

    这篇文章主要介绍了python numpy中multiply与*及matul 的区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • python3.0 字典key排序

    python3.0 字典key排序

    字典对象其实就是键-值对 下面是字典对象的添加,修改,删除 (修改与添加方法相同,当key值不存在的时候添加)
    2008-12-12
  • 详解Python中sorted()和sort()的使用与区别

    详解Python中sorted()和sort()的使用与区别

    众所周知,在Python中常用的排序函数为sorted()和sort()。本文将详细介绍sorted()和sort()方法的代码示例,并解释两者之间的区别,感兴趣的可以了解一下
    2022-03-03
  • Python中使用asyncio 封装文件读写

    Python中使用asyncio 封装文件读写

    本文主要给大家简单讲解如何用 asyncio.Future 对象来封装文件的异步读写。有需要的小伙伴可以参考下
    2016-09-09
  • 跟老齐学Python之print详解

    跟老齐学Python之print详解

    print的一些基本用法,在前面的讲述中也涉及一些,本讲是在复习的基础上,尽量再多点内容。
    2014-09-09
  • Python自省及反射原理实例详解

    Python自省及反射原理实例详解

    这篇文章主要介绍了Python自省及反射原理实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • PyCharm导入python项目并配置虚拟环境的教程详解

    PyCharm导入python项目并配置虚拟环境的教程详解

    这篇文章主要介绍了Pycharm导入python项目并配置虚拟环境的教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • Python Pytorch学习之图像检索实践

    Python Pytorch学习之图像检索实践

    随着电子商务和在线网站的出现,图像检索在我们的日常生活中的应用一直在增加。图像检索的基本本质是根据查询图像的特征从集合或数据库中查找图像。本文将利用Pytorch实现图像检索,需要的可以参考一下
    2022-04-04
  • Python实现读取及写入csv文件的方法示例

    Python实现读取及写入csv文件的方法示例

    这篇文章主要介绍了Python实现读取及写入csv文件的方法,涉及Python针对csv格式文件的读取、遍历、写入等相关操作技巧,需要的朋友可以参考下
    2018-01-01

最新评论