打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【python句柄获取】——简单明了的获取窗口句柄,并使用句柄操作获取相应内容(全网最详细)_python获取窗口句柄_小木

点个赞留个关注吧!!

所使用模块

  1. import win32gui
  2. import win32con
  3. import win32api
  4. import psutil
  5. import win32process

获取当前【鼠标坐标】

  1. # 获取当前鼠标【x y】坐标
  2. point = win32api.GetCursorPos()

通过鼠标坐标 获取鼠标坐标下的【窗口句柄】

  1. # 通过坐标获取坐标下的【窗口句柄】
  2. hwnd = win32gui.WindowFromPoint(x,y) # 请填写 x 和 y 坐标

通过窗口句柄获取 【线程ID 和 进程ID】

  1. # 通过句柄获取【线程ID 进程ID】
  2. hread_id, process_id = win32process.GetWindowThreadProcessId('句柄值')

通过进程ID 获取【进程名称】

  1. # 通过进程ID获取【进程名称】 列:weixin.exe
  2. process = psutil.Process('进程ID').name()

通过进程ID 获取【标准路径】

  1. # 通过进程ID 获取主文件程序【标准路径】 列:D:/filed/windoee/weixin.exe
  2. p_bin = psutil.Process('进程ID').exe()

通过进程ID 获取当前程序的【CPU利用率】

  1. # 通过进程ID获取 当前程序的【CPU利用率】 列:2.928741925323
  2. mem_percent = psutil.Process('进程ID').memory_percent()

通过进程ID 获取当前程序的【线程数量】

  1. # 通过进程ID获取 当前程序的【线程数量】
  2. num_threads = psutil.Process('进程ID').num_threads()

通过窗口句柄 获取当前窗口的【左、上、右、下】四个方向的坐标位置

  1. # 通过句柄值获取当前窗口的【左、上、右、下】四个方向的坐标位置
  2. left, top, right, bottom = win32gui.GetWindowRect('句柄值')

通过标题名称【获取句柄】

  1. #通过窗口标题获取句柄
  2. hld = win32gui.FindWindow(None,u"此电脑")

通过句柄 获得【标题】

  1. # 通过句柄获得标题
  2. def get_title(hwnd):
  3. title = win32gui.GetWindowText(hwnd)
  4. print('窗口标题:%s' % (title))
  5. return title

通过句柄获得【窗口类名】

  1. # 通过句柄获取窗口类名
  2. def get_clasname(hwnd):
  3. clasname = win32gui.GetClassName(hwnd)
  4. print('窗口类名:%s' % (clasname))
  5. return clasname
  6. get_clasname("句柄值")

通过句柄【置顶窗口】

  1. # 通过句柄窗口置顶
  2. win32gui.SetWindowPos('句柄值', win32con.HWND_TOPMOST, 0, 0, 0, 0,win32con.SWP_NOMOVE | win32con.SWP_NOACTIVATE | win32con.SWP_NOOWNERZORDER | win32con.SWP_SHOWWINDOW | win32con.SWP_NOSIZE)

通过句柄【取消置顶窗口】

  1. # 通过句柄取消窗口置顶
  2. def set_down(hwnd):
  3. win32gui.SetWindowPos(hwnd, win32con.HWND_NOTOPMOST, 0, 0, 0, 0,
  4. win32con.SWP_SHOWWINDOW | win32con.SWP_NOSIZE | win32con.SWP_NOMOVE)
  5. set_down("句柄值")

通过句柄将窗口【放到最前面】(非置顶)

  1. # 通过句柄将窗口放到最前
  2. win32gui.SetForegroundWindow("句柄值")

检测当前句柄【是否存在】返回值为 1 或 0

  1. # 检测当前句柄是否存在 存在则返回 1 不存在返回 0
  2. N = win32gui.IsWindowEnabled("句柄值")
  3. S = win32gui.IsWindowVisible("句柄值")
  4. V = win32gui.IsWindow("句柄值")

通过窗口句柄【最大化和最小化窗口】

  1. # 通过窗口句柄【最大化窗口】
  2. win32gui.ShowWindow('句柄值', win32con.SW_MAXIMIZE)
  3. # 通过窗口句柄【最小化窗口】
  4. win32gui.ShowWindow('句柄值', win32con.SW_MINIMIZE)

通过窗口句柄【隐藏窗口和显示隐藏窗口】

  1. # 通过窗口句柄【隐藏窗口】
  2. win32gui.ShowWindow('句柄值', win32con.SW_HIDE)
  3. # 通过窗口句柄【显示隐藏窗口】
  4. win32gui.ShowWindow('句柄值', win32con.SW_SHOW)

通过窗口句柄【关闭当前句柄控件】

  1. # 通过窗口句柄【关闭当前句柄控件】
  2. # 是关闭单个句柄控件,不是关闭整个程序,只能关闭输入的句柄值
  3. win32gui.SendMessage('句柄值', win32con.WM_CLOSE)

通过窗口句柄【更改窗口标题】

  1. # 通过句柄【更改窗口标题】 两种方法
  2. win32gui.SetWindowText('句柄值', '名称')
  3. win32gui.SendMessage('句柄值', 12, 0, '名称')

获取当前所有【窗口句柄和窗口句柄名称】

  1. # ————获取全部句柄————
  2. def _hwnd_(hwnd, mouse):
  3. print(f'句柄:{hwnd}\t 名称: {win32gui.GetWindowText(hwnd)}')
  4. win32gui.EnumWindows(_hwnd_, 0) # 获取全部句柄

打开此文件所在文件夹并【定位到此文件】

  1. import subprocess
  2. # 在打开此文件所在文件夹并【定位到此文件】
  3. FILE = 'C:/Windows/System32/notepad.exe'
  4. subprocess.Popen(f'explorer.exe /select,{FILE}', shell=False)

获取某坐标的【RGB颜色值】

  1. import pyautogui
  2. # 获取某坐标的RGB颜色值 返回(236, 236, 236)
  3. pyautogui.screenshot().getpixel((x,y)) 手动填写 x y 坐标
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
在win ce中如何 结束进程
Python对Windows程序窗口的操作
C# GetWindowThreadProcessId用法 .
python 获取所有窗口句柄
python小工具
python win32api教程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服