码迷,mamicode.com
首页 > 编程语言 > 详细

Python中设置指定窗口为前台活动窗口(最顶层窗口)win32gui

时间:2020-08-03 00:54:14      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:color   不可点击   detail   shel   details   pre   div   指定   mic   

参考链接:Python中设置指定窗口为前台活动窗口(最顶层窗口)win32gui:  https://blog.csdn.net/bailichun19901111/article/details/105042145

               Win32 API之EnumWindows详解: http://blog.sina.com.cn/s/blog_e5f00a490101w1yc.html

测试1:SetForegroundWindow修改活动。

#
# 输出当前活动窗体句柄
#
def print_GetForegroundWindow():
    hwnd_active = win32gui.GetForegroundWindow()
    print(hwnd_active hwnd:,hwnd_active)
    print(hwnd_active text:,win32gui.GetWindowText(hwnd_active))
    print(hwnd_active class:,win32gui.GetClassName(hwnd_active))
# 输出当前活动窗口句柄
print_GetForegroundWindow()
print(------------------------------------------)
# 设置TIM为活动窗口
shell = win32com.client.Dispatch("WScript.Shell")
shell.SendKeys(%)
win32gui.SetForegroundWindow(win32gui.FindWindow("TXGuiFoundation","TIM"))
# 查看是否修改
print_GetForegroundWindow()

输出结果已经修改,但是设置得窗体并不会突出到最前端。这样对于pyautogui来说,是无法操作,因此还需要改进放到最前。

技术图片

 

 最终结果,可以将置顶窗体置顶最前,且激活。

# 输出当前活动窗口句柄
print_GetForegroundWindow()
print(------------------------------------------)
# 设置TIM为活动窗口
shell = win32com.client.Dispatch("WScript.Shell")
shell.SendKeys(%)
win32gui.SetForegroundWindow(win32gui.FindWindow("TXGuiFoundation","TIM"))
# 查看是否修改
print_GetForegroundWindow()
# 加上显示到最前端,这里使用 SW_SHOW,用参考链接中得max有时会导致窗体不可点击
win32gui.ShowWindow(win32gui.FindWindow("TXGuiFoundation","TIM"), win32con.SW_SHOW)

 

Python中设置指定窗口为前台活动窗口(最顶层窗口)win32gui

标签:color   不可点击   detail   shel   details   pre   div   指定   mic   

原文地址:https://www.cnblogs.com/cycxtz/p/13424046.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!