Python中設置指定窗口為前台活動窗口(最頂層窗口)win32gui


參考鏈接: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)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM