点个赞留个关注吧!!
- import win32gui
- import win32con
- import win32api
- import psutil
- import win32process
- # 获取当前鼠标【x y】坐标
- point = win32api.GetCursorPos()
- # 通过坐标获取坐标下的【窗口句柄】
- hwnd = win32gui.WindowFromPoint(x,y) # 请填写 x 和 y 坐标
- # 通过句柄获取【线程ID 进程ID】
- hread_id, process_id = win32process.GetWindowThreadProcessId('句柄值')
- # 通过进程ID获取【进程名称】 列:weixin.exe
- process = psutil.Process('进程ID').name()
- # 通过进程ID 获取主文件程序【标准路径】 列:D:/filed/windoee/weixin.exe
- p_bin = psutil.Process('进程ID').exe()
- # 通过进程ID获取 当前程序的【CPU利用率】 列:2.928741925323
- mem_percent = psutil.Process('进程ID').memory_percent()
- # 通过进程ID获取 当前程序的【线程数量】
- num_threads = psutil.Process('进程ID').num_threads()
- # 通过句柄值获取当前窗口的【左、上、右、下】四个方向的坐标位置
- left, top, right, bottom = win32gui.GetWindowRect('句柄值')
- #通过窗口标题获取句柄
- hld = win32gui.FindWindow(None,u"此电脑")
- # 通过句柄获得标题
- def get_title(hwnd):
- title = win32gui.GetWindowText(hwnd)
- print('窗口标题:%s' % (title))
- return title
- # 通过句柄获取窗口类名
- def get_clasname(hwnd):
- clasname = win32gui.GetClassName(hwnd)
- print('窗口类名:%s' % (clasname))
- return clasname
- get_clasname("句柄值")
- # 通过句柄窗口置顶
- win32gui.SetWindowPos('句柄值', win32con.HWND_TOPMOST, 0, 0, 0, 0,win32con.SWP_NOMOVE | win32con.SWP_NOACTIVATE | win32con.SWP_NOOWNERZORDER | win32con.SWP_SHOWWINDOW | win32con.SWP_NOSIZE)
- # 通过句柄取消窗口置顶
- def set_down(hwnd):
- win32gui.SetWindowPos(hwnd, win32con.HWND_NOTOPMOST, 0, 0, 0, 0,
- win32con.SWP_SHOWWINDOW | win32con.SWP_NOSIZE | win32con.SWP_NOMOVE)
- set_down("句柄值")
- # 通过句柄将窗口放到最前
- win32gui.SetForegroundWindow("句柄值")
- # 检测当前句柄是否存在 存在则返回 1 不存在返回 0
- N = win32gui.IsWindowEnabled("句柄值")
- S = win32gui.IsWindowVisible("句柄值")
- V = win32gui.IsWindow("句柄值")
- # 通过窗口句柄【最大化窗口】
- win32gui.ShowWindow('句柄值', win32con.SW_MAXIMIZE)
- # 通过窗口句柄【最小化窗口】
- win32gui.ShowWindow('句柄值', win32con.SW_MINIMIZE)
- # 通过窗口句柄【隐藏窗口】
- win32gui.ShowWindow('句柄值', win32con.SW_HIDE)
- # 通过窗口句柄【显示隐藏窗口】
- win32gui.ShowWindow('句柄值', win32con.SW_SHOW)
- # 通过窗口句柄【关闭当前句柄控件】
- # 是关闭单个句柄控件,不是关闭整个程序,只能关闭输入的句柄值
- win32gui.SendMessage('句柄值', win32con.WM_CLOSE)
- # 通过句柄【更改窗口标题】 两种方法
- win32gui.SetWindowText('句柄值', '名称')
- win32gui.SendMessage('句柄值', 12, 0, '名称')
- # ————获取全部句柄————
- def _hwnd_(hwnd, mouse):
- print(f'句柄:{hwnd}\t 名称: {win32gui.GetWindowText(hwnd)}')
- win32gui.EnumWindows(_hwnd_, 0) # 获取全部句柄
- import subprocess
- # 在打开此文件所在文件夹并【定位到此文件】
- FILE = 'C:/Windows/System32/notepad.exe'
- subprocess.Popen(f'explorer.exe /select,{FILE}', shell=False)
- import pyautogui
- # 获取某坐标的RGB颜色值 返回(236, 236, 236)
- pyautogui.screenshot().getpixel((x,y)) 手动填写 x y 坐标
联系客服