概述
本文为满足强迫症需求(不是),通过Python实现鼠标选定窗口抓取句柄并实现窗口位置居中,或可通过输入对应的标题序号以选取句柄。
import imp
import sys
from webbrowser import get
import win32gui
import win32con
import win32api
import time
def get_all_windows():
hWnd_list = []
win32gui.EnumWindows(lambda hWnd, param: param.append(hWnd), hWnd_list)
return hWnd_list
def get_title(hwnd):
title = win32gui.GetWindowText(hwnd)
return title
def Med_Loc(Hwnd,ScreenX,ScreenY):
left, top, right, bottom = win32gui.GetWindowRect(Hwnd)
AppX=right-left
AppY=bottom-top
TargetX=int((ScreenX-AppX+1)/2)
TargetY=int((ScreenY-AppY+1)/2)
win32gui.MoveWindow(Hwnd,TargetX,TargetY,AppX,AppY,True)
Title=dict()
hWndList=get_all_windows()
for i in range(0,len(hWndList)):
hWnd=hWndList[i]
title=get_title(hWnd)
#print('窗口标题:',title)
if(len(title)!=0 and title!="Default IME" and title!="MSCTFIME UI"):
Title[i]=title
for key,value in Title.items():
print(key,':',value)
ScreenX=win32api.GetSystemMetrics(win32con.SM_CXSCREEN) #获得屏幕分辨率X轴
ScreenY=win32api.GetSystemMetrics(win32con.SM_CYSCREEN) #获得屏幕分辨率Y轴
while True:
Num=int(input("输入序号以指定窗口n输入-1以选中窗口n输入-2以退出n"))
if Num in Title.keys():
#win32gui.PostMessage(hWndList[Num], win32con.WM_CLOSE, 0, 0)
Hwnd=hWndList[Num]
Med_Loc(Hwnd,ScreenX,ScreenY)
print("窗口句柄:",Hwnd,";窗口标题:",get_title(Hwnd))
elif Num==-1:
print("3秒后调整窗口")
time.sleep(3)
Hwnd=win32gui.GetForegroundWindow()
print("窗口句柄:",Hwnd,";窗口标题:",get_title(Hwnd))
Med_Loc(Hwnd,ScreenX,ScreenY)
elif Num==-2:
print("退出程序")
break
input("Press Any key to Exit")
最后
以上就是羞涩戒指为你收集整理的Python实现鼠标选定窗口位置居中的全部内容,希望文章能够帮你解决Python实现鼠标选定窗口位置居中所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复