自动化工具之二:win32gui
自动化工具win32gui
一、下载安装win32gui
二、Win32gui的使用
1.查找窗体句柄
我们知道的所有空间其实就是窗体,所有的窗口都有一个独立的句柄,要操作任意一个窗体,你都需要找到这个窗体的句柄,这里,我们就可以用到FindWindow函数和FindWindowEx函数。在pywin32中,他们都属于win32gui的模块;
(1)使用FindWindow函数,列出所有的顶级窗口
FindWindow(lpClassName=None, lpWindowName=None):
描述:自顶层窗口(也就是桌面)开始搜索条件匹配的窗体,并返回这个窗体的句柄。不搜索子窗口、不区分大小写。找不到就返回0
参数:
lpClassName:字符型,是窗体类名,这个可以在Spy++里找到。
lpWindowName:字符型,是窗口标题,也就是标题栏上你能看见的那个标题。
说明:这个函数我们仅能用来找主窗口。
(2)使用FindWindowEx函数,列出所有的顶级窗口
FindWindowEx(hwndParent=0, hwndChildAfter=0, lpszClass=None, lpszWindow=None);
描述:搜索类名和窗体名匹配的窗体,并返回这个窗体的句柄。不区分大小写,找不到就返回0。
参数:
hwndParent:若不为0,则搜索句柄为hwndParent窗体的子窗体。
hwndChildAfter:若不为0,则按照z-index的顺序从hwndChildAfter向后开始搜索子窗体,否则从第一个子窗体开始搜索。
lpClassName:字符型,是窗体的类名,这个可以在Spy++里找到。
lpWindowName:字符型,是窗口名,也就是标题栏上你能看见的那个标题。
说明:找到了主窗口以后就靠它来定位子窗体啦。
(3)获取窗口位置
例如:
(4)获取某个句柄的类名和标题
title = win32gui.GetWindowText(handle) clsname = win32gui.GetClassName(handle)
(5)枚举所有所有子窗口句柄
hwndChildList = []win32gui.EnumChildWindows(hwnd1, lambda hwnd, param: param.append(hwnd), hwndChildList)aa = hwndChildList
(6)获得窗口的菜单句柄
subHandle = win32gui.FindWindowEx(handle, 0, "EDIT", None)menuHandle = win32gui.GetMenu(subHandle)
(7)获得子菜单或下拉菜单句柄
# 参数:菜单句柄 子菜单索引号
subMenuHandle = win32gui.GetSubMenu(menuHandle, 0)
未完后续补充.......
转载于:https://www.cnblogs.com/yfacesclub/p/10113053.html
自动化工具之二:win32gui相关推荐
- 自动化工具后起之秀Ansible的部署实践
本文转自微信号EAWorld.扫描下方二维码,关注成功后,回复"普元方法+",将会获得热门课堂免费学习机会! 从早期手动加脚本的部署方式,到后来自动化工具(chef, puppet ...
- Ansible批量自动化管理工具(二)
Ansible批量自动化管理工具(二) 链接:https://pan.baidu.com/s/1A3Iq3gGkGS27L_Gt37_I0g 提取码:ncy2 复制这段内容后打开百度网盘手机App,操 ...
- python 自动化办公 案例_python自动化工具之pywinauto实例详解
python自动化工具之pywinauto实例详解 来源:中文源码网 浏览: 次 日期:2019年11月5日 [下载文档: python自动化工具之pywinauto实例详解.txt ] (友情提示: ...
- 推荐一个工作流自动化工具
以下文章来源方志朋的博客,回复"666"获面试宝典 今天,要和大家分享一个"开源"工作流自动化工具--n8n ,简单来说,它是一个与其他应用程序集成的应用程序, ...
- 前端自动化工具 grunt 插件 uglify 的简单使用(一)
Grunt 的简介: Grunt 是一套前端自动化工具,是一个基于 node.js 的命令行工具,它一般用于: 1.压缩文件: 2.合并文件: 3.简单的语法检测: 4.监听文件变动: 5.less ...
- python自动测试p-python网络爬虫之自动化测试工具selenium[二]
@ 前言 hello,大家好,在上章的内容里我们已经可以爬取到了整个网页下来,当然也仅仅就是一个网页. 因为里面还有很多很多的标签啊之类我们所不需要的东西. 额,先暂且说下本章内容,如果是没有丝毫编程 ...
- uvm 形式验证_验证平台自动化篇之二:UVM Framework
原标题:验证平台自动化篇之二:UVM Framework 一个UVM使用者,从新手到精通大致会经历三年的时间,而在经过这三年之后,verifier会有倦怠期.除了不可避免地在80%以上工作处于重复性劳 ...
- C#最佳工具集合:IDE、分析、自动化工具等
C#是企业中广泛使用的编程语言,特别是那些依赖微软的程序语言.如果您使用C#构建应用程序,则最有可能使用Visual Studio,并且已经寻找了一些扩展来对您的开发进行管理.但是,这个工具列表可能会 ...
- GitLab 11.9 正式发布,自动化工具 ChatOps 已开源
GitLab 11.9 已正式发布,该版本新增了两个和安全相关的特性,一是快速检查私密信息是否泄漏,从该版本起在 CI/CD 过程中会扫描开发者提交的信息是否包含私密内容,有的话会在合并 PR 时向开 ...
最新文章
- [na]pc加入域认证细节
- 025_Tree树形控件
- 年轻的工程师如何月入伍万XD
- 【转】libpcap实现机制及接口函数
- 经典的机器学习方面源代码库(非常全,数据挖掘,计算...)
- 计费系统设计_Web设计人员的按小时计费与基于价值的定价
- macbook怎么改编码_如何设置新的MacBook进行编码
- 手写tomcat监控工具---宕机重启
- 目标检测——YOLOV5的学习笔记(legcay)
- 修改10g自动统计信息收集作业GATHER_STATS_JOB到仅仅周末执行
- win10操作系统如何整理桌面
- 数据挖掘——时间序列算法之组合模型
- (四)C++游戏开发-本地存储-二进制文件读写
- 永磁直驱风力发电机组并网仿真模型搭建
- 正则表达式,固话和手机号码验证,支持验证分机号
- android插件实现打印机,Android USB调用打印机(针式打印机)
- 石家庄康业软件科技有限公司
- 前端学习笔记:CSS学习之选择器篇
- python手动安装jieba库 No module named ‘jieba‘
- MD5 SHA1 加密
热门文章
- python【数据结构与算法】各进制转换-使用内置函数
- android 单例模式详解,android开发设计模式之——单例模式详解
- DB2数据库备份转成MySQL_DB2 数据库备份(集中化)
- android studio 设置自动编译_某小型公司持续集成工具jenkins实践(JAVA WEB、Android、IOS、html)...
- python科学计数法转换_柳小白Python学习笔记35 Excel之科学计数法类型转换及数据选取1...
- 学校的计算机教室火灾级别,学校教室火灾隐患有哪些
- java封装的特性,java的三大特性(封装、继承、多态)
- go语言笔记——defer作用DB资源等free或实现调试
- 日志和告警数据挖掘经验谈——利用日志相似度进行聚类,利用时间进行关联分析...
- 第三次Python作业———林东