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的urllib库提交WEB表单
Feb 24 Python
在Django的上下文中设置变量的方法
Jul 20 Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 Python
tensorflow训练中出现nan问题的解决
Feb 10 Python
python素数筛选法浅析
Mar 19 Python
Python 判断文件或目录是否存在的实例代码
Jul 19 Python
python 实现在一张图中绘制一个小的子图方法
Jul 07 Python
python pandas 时间日期的处理实现
Jul 30 Python
浅谈django2.0 ForeignKey参数的变化
Aug 06 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
Sep 29 Python
selenium学习教程之定位以及切换frame(iframe)
Jan 04 Python
分享3个非常实用的 Python 模块
Mar 03 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下封装较好的数字分页方法
2010/11/23 PHP
PHP防CC攻击实现代码
2011/12/29 PHP
PHP扩展CURL的用法详解
2014/06/20 PHP
php解析xml方法实例详解
2015/05/12 PHP
PHP中new static()与new self()的比较
2016/08/19 PHP
filemanage功能中用到的lib.js
2007/04/08 Javascript
javascript call和apply方法
2008/11/24 Javascript
jquery插件jbox使用iframe关闭问题
2009/02/09 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
JS替换文本域内的回车示例
2014/02/18 Javascript
JavaScript实现弹出子窗口并传值给父窗口
2014/12/18 Javascript
Web程序员必备的7个JavaScript函数
2016/06/14 Javascript
JS验证图片格式和大小并预览的简单实例
2016/10/11 Javascript
微信小程序 教程之小程序配置
2016/10/17 Javascript
详解微信小程序Radio选中样式切换
2017/07/06 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
JS中超越现实的匿名函数用法实例分析
2019/06/21 Javascript
JS中call()和apply()的功能及用法实例分析
2019/06/28 Javascript
[57:18]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#3VP VS VG
2016/03/03 DOTA
浅谈python内置变量-reversed(seq)
2017/06/21 Python
使用python编写简单的小程序编译成exe跑在win10上
2018/01/15 Python
django加载本地html的方法
2018/05/27 Python
python顺序的读取文件夹下名称有序的文件方法
2018/07/11 Python
Python3中configparser模块读写ini文件并解析配置的用法详解
2020/02/18 Python
Python高并发解决方案实现过程详解
2020/07/31 Python
利用Python的folium包绘制城市道路图的实现示例
2020/08/24 Python
python开发入门——set的使用
2020/09/03 Python
文明演讲稿范文
2014/05/12 职场文书
对照四风自我剖析材料
2014/10/07 职场文书
中标通知书
2015/04/17 职场文书
小学生家长意见
2015/06/03 职场文书
地道战观后感500字
2015/06/04 职场文书
十八大观后感
2015/06/12 职场文书
导游词之日本富士山
2020/01/06 职场文书
python3.9之你应该知道的新特性详解
2021/04/29 Python
Python实现科学占卜 让视频自动打码
2022/04/09 Python