admin管理员组文章数量:1130349
import win32gui,time
def windowEnumerationHandler(hwnd, windowlist):
windowlist.append((hwnd, win32gui.GetWindowText(hwnd)))
#通过枚举获取所有窗口的句柄和标题
windowlist = []
win32gui.EnumWindows(windowEnumerationHandler, windowlist)
#遍历所有窗口,指定要操作的窗口的标题的关键词,比如“记事本”
for i in windowlist:
if "记事本" in i[1].lower():
#按规则显示窗口,如果没有这一行,那么已最小化的窗口将无法激活,只能激活后台的未最小化的窗口。
# 这里的数字4是根据实际情况填写的,有时候可能本来是最大化的窗口,但最终显示后却不是最大化,可根据最下面的图去选择最合适的数字。
win32gui.ShowWindow(i[0],4)
#激活窗口到前台
win32gui.SetForegroundWindow(i[0])
#显示句柄和标题方便查看
print(i)
#如果匹配“关键词”的窗口有多个,想一次性显示就应该延时一下,如果只需要随便显示其中一个就直接break结束
time.sleep(2)
#break
.
.
.
确保安装了pywin32模块后,上面的这段代码可以直接测试,只需要打开一个windows自带的记事本程序的窗口并放到后台,执行代码后记事本程序就会自动切换到前台。
.
.
.
win32gui.ShowWindow()的最后一个参数说明
import win32gui,time
def windowEnumerationHandler(hwnd, windowlist):
windowlist.append((hwnd, win32gui.GetWindowText(hwnd)))
#通过枚举获取所有窗口的句柄和标题
windowlist = []
win32gui.EnumWindows(windowEnumerationHandler, windowlist)
#遍历所有窗口,指定要操作的窗口的标题的关键词,比如“记事本”
for i in windowlist:
if "记事本" in i[1].lower():
#按规则显示窗口,如果没有这一行,那么已最小化的窗口将无法激活,只能激活后台的未最小化的窗口。
# 这里的数字4是根据实际情况填写的,有时候可能本来是最大化的窗口,但最终显示后却不是最大化,可根据最下面的图去选择最合适的数字。
win32gui.ShowWindow(i[0],4)
#激活窗口到前台
win32gui.SetForegroundWindow(i[0])
#显示句柄和标题方便查看
print(i)
#如果匹配“关键词”的窗口有多个,想一次性显示就应该延时一下,如果只需要随便显示其中一个就直接break结束
time.sleep(2)
#break
.
.
.
确保安装了pywin32模块后,上面的这段代码可以直接测试,只需要打开一个windows自带的记事本程序的窗口并放到后台,执行代码后记事本程序就会自动切换到前台。
.
.
.
win32gui.ShowWindow()的最后一个参数说明
版权声明:本文标题:python根据windows的窗口标题的部分关键词激活指定窗口到前台 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/jiaocheng/1763926011a2972053.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论