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


Posted in Python onAugust 12, 2020

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神器对付12306变态验证码
Jan 05 Python
详解MySQL数据类型int(M)中M的含义
Nov 20 Python
Python设计模式之工厂模式简单示例
Jan 09 Python
python中的二维列表实例详解
Jun 19 Python
Pytorch加载部分预训练模型的参数实例
Aug 18 Python
flask框架配置mysql数据库操作详解
Nov 29 Python
浅谈python 类方法/静态方法
Sep 18 Python
Python hashlib模块的使用示例
Oct 09 Python
秀!学妹看见都惊呆的Python小招数!【详细语言特性使用技巧】
Apr 27 Python
Python卷积神经网络图片分类框架详解分析
Nov 07 Python
Python实现Matplotlib,Seaborn动态数据图
May 06 Python
Python使用pandas导入csv文件内容的示例代码
Dec 24 Python
Python面向对象实现方法总结
Aug 12 #Python
Python命名空间及作用域原理实例解析
Aug 12 #Python
python将字典内容写入json文件的实例代码
Aug 12 #Python
Python调用jar包方法实现过程解析
Aug 11 #Python
如何用python免费看美剧
Aug 11 #Python
Pythonic版二分查找实现过程原理解析
Aug 11 #Python
Python3合并两个有序数组代码实例
Aug 11 #Python
You might like
坏狼的PHP学习教程之第1天
2008/06/15 PHP
thinkphp循环结构用法实例
2014/11/24 PHP
php中10个不同等级压缩优化图片操作示例
2016/11/14 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
2021/02/26 PHP
Javascript Object.extend
2010/05/18 Javascript
js前台分页显示后端JAVA数据响应
2013/03/18 Javascript
JS实现匀速运动的代码实例
2013/11/29 Javascript
js网页滚动条滚动事件实例分析
2015/05/05 Javascript
js实现select跳转菜单新窗口效果代码分享(超简单)
2015/08/21 Javascript
JavaScript导航脚本判断当前导航
2016/07/12 Javascript
jQuery插件EasyUI获取当前Tab中iframe窗体对象的方法
2016/08/05 Javascript
ES6记录异步函数的执行时间详解
2016/08/31 Javascript
Vue.js常用指令汇总(v-if、v-for等)
2016/11/03 Javascript
Angular4 中常用的指令入门总结
2017/06/12 Javascript
Vue实现带进度条的文件拖动上传功能
2018/02/23 Javascript
Vue 项目代理设置的优化
2018/04/17 Javascript
node puppeteer(headless chrome)实现网站登录
2018/05/09 Javascript
node.js 模块和其下载资源的镜像设置的方法
2018/09/06 Javascript
VUE脚手架的下载和配置步骤详解
2019/04/01 Javascript
详解Vue之父子组件传值
2019/04/01 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
2020/01/11 jQuery
Python open读写文件实现脚本
2008/09/06 Python
Python实现excel转sqlite的方法
2017/07/17 Python
Tensorflow实现酸奶销量预测分析
2019/07/19 Python
如何通过python的fabric包完成代码上传部署
2019/07/29 Python
利用python在大量数据文件下删除某一行的例子
2019/08/21 Python
简单了解Pandas缺失值处理方法
2019/11/16 Python
python使用SQLAlchemy操作MySQL
2020/01/02 Python
用HTML5制作烟火效果的教程
2015/05/12 HTML / CSS
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
成人继续教育实施方案
2014/03/01 职场文书
合作经营协议书范本
2014/04/17 职场文书
小学班主任经验交流材料
2014/12/16 职场文书
送给自己的励志语句:要安静的优秀,悄无声息的坚强
2019/11/26 职场文书
mysql分表之后如何平滑上线详解
2021/11/01 MySQL