python中获取子窗口的句柄 5

请教大神一个问题,帮个忙就是在IE上面,我打开一个网页会弹出域登录框我用spy++获取到了句柄信息我想通过python中的win32的包,来查找到Edit类型的句柄,比如... 请教大神

一个问题,帮个忙
就是在IE上面,我打开一个网页会弹出域登录框

我用spy++获取到了句柄信息

我想通过python中的win32的包,来查找到E

dit类型的句柄,比如我选定的那个窗口。
我可以获取到DirectUIHWND类型的句柄,但是它了子窗口的类型和标题值都一样,不太好获取到。
python的win32中没有获取所有的子窗口句柄的方法,也没有获取下一个窗口句柄的方法。
求大神指点下
展开
 我来答
xyyvsxh
2014-01-21 · TA获得超过330个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:221万
展开全部
可以使用win32gui 以及pyhook 库来实现你的需求
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
njdvt
2014-04-24
知道答主
回答量:8
采纳率:0%
帮助的人:1.1万
展开全部
获取目前窗口的层次,对于获取此窗口中指定的子窗口的句柄有非常重要的意义。此部分功能Pyspy++是无法提供的,因为它只提供一个子窗口,所以无法获得目前窗口的层次
例如我想获得OG2263登录界面的窗口层次方法如下:
使用1)中的方法将查找图标拖到登录界面的”windows安全”位置如【图8】,Spy++可以找到所有属于此登录界面的子窗口如【图8】

【图8】
可以根据1)中的方法找到你希望定位的子窗口,例如我希望定位的子窗口为”用户名”和”密码”此两个窗口。使用
首先需要搞清楚这些子窗口之前的关系。
第一层为此窗口的窗体:即窗口名称为0002029A “Windows安全”#32770(对话框)
第二层为此窗体下第一层的窗口,即打开第一层窗体的”+”号后的第一层:即名称为 0002029C”” Direct UIHWND
第三层为第二层下的窗口,即打开第二层窗体的”+”号后的第一层,即上述窗口下有8个平行的窗口均为第三层窗口
第四层为第三层下的窗口,即打开第三层窗体的”+”号后的第一层,即第7个窗口打开后窗体,名称为0003A28 “”Edit
然后了解这些窗口是如何编号的

|-0002029A “Windows安全”#32770(对话框) ->index 无任何
编号
|- 0002029C”” Direct UIHWND ->Index为0
|-窗口1 ->index 为0
|-窗口2 ->index为1
|-窗口3 ->index 为2
|-窗口4 ->index为3
|-窗口5 ->index为4
|-窗口6 ->index为5
|-窗口7 ->index为6
|-Edit1 ->index为0
|-窗口8 ->index为7
|-Edit2 ->index为0

然后使用以下两个函数:
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式