按键精灵获取窗口句柄 学会用按键精灵获取子窗口句柄

学会用按键精灵获取子窗口句柄――简介

电脑的桌面是最顶级的窗口,在桌面里的其他程序窗口是桌面的子窗口。那到底父窗口和子窗口是怎么理解的呢?

学会用按键精灵获取子窗口句柄――工具/原料
按键精灵2014学会用按键精灵获取子窗口句柄――方法/步骤

学会用按键精灵获取子窗口句柄 1、

【父窗口与子窗口】

每一个窗体form都是一个父窗口,它不是其他任一个窗体的子窗口.窗体上的所有控件,按钮等就是窗体的子窗口.一个窗口(除了窗体)既可能是父窗口,也可能是子窗口.比如窗体里面有一个frame,frame里面的控件就是frame的子窗口,但frame同时也是窗体的子窗口.就像容器里面装着容器.最大的那个容器就是窗体.每一个容器里面的东西就是其子窗口.


学会用按键精灵获取子窗口句柄 2、

【常见的父窗口和子窗口的关系】

【父窗口对应一个子窗口】

1、有类名没有标题(有标题没有类名)

例如:记事本,它只有一个子窗口,子窗口只有类名没有标题。


学会用按键精灵获取子窗口句柄 3、

我们要如何查找获取到这个子窗口的句柄呢?

首先,我们先复习下按键里的获取子窗口句柄的命令。

命令名称:

FindEx查找子窗口

命令功能:

根据父窗口句柄查找子窗口匹配类名或者匹配标题

命令参数:

参数1整数型,父窗口句柄

参数2整数型,子窗口句柄

参数3字符串型,匹配类名

参数4字符串型,匹配标题

㈠先要获取父窗口的句柄,然后根据父窗口的句柄来找子窗口。

记事本父窗口的标题是:无标题-记事本类名是:Notepad

hwnd=Plugin.Window.find("Notepad","无标题-记事本")//获取记事本父窗口句柄

㈡获取到父窗口句柄之后,我们还需要知道子窗口的类名,类名为:Edit

zhwnd=Plugin.Window.findex(hwnd,0,"Edit",0)//获取子窗口句柄

*这里子窗口句柄的值设置为0,可能会有很多童鞋很困惑,findex命令不就是获取子窗口句柄的吗?那这里还设置一个子窗口句柄的值干嘛?我要知道还要用findex来找吗?

小编刚接触这个命令的时候,对于这个参数也非常疑惑,后来发现是这样的:

findex命令里的子窗口句柄,指的是当前要查找的子窗口上面一个子窗口的句柄。


学会用按键精灵获取子窗口句柄 4、

例如上图:当我们要找创建时间这个子窗口的时候,findex命令里的子窗口句柄参数就设置为红框里子窗口的句柄。

2、没有类名也没有标题

父窗口下只有一个子窗口的情况,标题和类名不设置是可以的。

hwnd=Plugin.Window.find(0,"无标题-记事本")

zhwnd=Plugin.Window.findex(hwnd,0,0,0)

TracePrintzhwnd

结果:


学会用按键精灵获取子窗口句柄 5、

【父窗口对应多个子窗口】

1、多个子窗口的类名或标题不一样

拿有道云笔记窗口作为例子:

学会用按键精灵获取子窗口句柄_窗口句柄


学会用按键精灵获取子窗口句柄 6、

它的这两个子窗口的类名标题都不一样,这样的情况我们按照前面介绍的父窗口下只有一个子窗口的方式来查找就可以了。

代码:

hwnd=Plugin.Window.find(0,"有道云笔记Haiye")

按键精灵获取窗口句柄 学会用按键精灵获取子窗口句柄

zhwnd=Plugin.Window.findex(hwnd,0,"NETEASEPOPO2007List",0)

TracePrintzhwnd

结果:


学会用按键精灵获取子窗口句柄 7、

2、多个子窗口的类名或标题一样


学会用按键精灵获取子窗口句柄 8、

有道云笔记下的这两个子窗口的类名、标题都是一样的。

hwnd=Plugin.Window.find(0,"有道云笔记Haiye")

HwndEx=Plugin.Window.findex(hwnd,0,"Popo.UI.Controls.Class.SkinSplitter",0)

上面的代码只能找到第一个类名为Popo.UI.Controls.Class.SkinSplitter的子窗口,第二个无法找到。这样的情况,该怎么找第二个呢?

在前面我们提到过,findex里的子窗口句柄这个参数,在这里我们就可以利用它。

思路如下:

1、获取父窗口句柄

2、获取第一个子窗口句柄

3、根据父窗口句柄以及第一个子窗口句柄,获取第二个子窗口句柄

代码:

hwnd=Plugin.Window.find(0,"有道云笔记Haiye")

HwndEx=Plugin.Window.findex(hwnd,0,"Popo.UI.Controls.Class.SkinSplitter",0)

TracePrintHwndEx

HwndEx=Plugin.Window.findex(hwnd,HwndEx,"Popo.UI.Controls.Class.SkinSplitter",0)

TracePrintHwndEx

结果:

学会用按键精灵获取子窗口句柄_窗口句柄


学会用按键精灵获取子窗口句柄 9、

【子窗口下还有子窗口】

例如按键抓抓窗口:


学会用按键精灵获取子窗口句柄 10、

抓抓父窗口下类名为#32770的子窗口,它还有它的子窗口,我们如果要找#32770的子窗口下标题为句柄的窗口,该如何查找呢?

思路:

1、获取抓抓父窗口句柄

2、根据父窗口句柄找#32770的子窗口句柄

3、以#32770的子窗口作为父窗口,继续查找下一级子窗口

代码:

hwnd=Plugin.Window.find(0,"按键抓抓辅助工具2014.00.14006")

zhwnd=Plugin.Window.findex(hwnd,0,"#32770",0)

zzhwnd=Plugin.Window.findex(zhwnd,0,0,"句柄")

TracePrintzzhwnd

结果:

学会用按键精灵获取子窗口句柄_窗口句柄

  

爱华网本文地址 » http://www.aihuau.com/a/8104160103/196732.html

更多阅读

按键精灵怎么用 精 剑三按键精灵怎么用

按键精灵是一个模拟鼠标键盘动作的软件。通过制作脚本,可以让按键精灵代替双手,自动执行一系列鼠标键盘动作。按键精灵简单易用,不需要任何编程知识就可以作出功能强大的脚本。只要在电脑前用双手可以完成的动作,按键精灵都可以替代完

用按键精灵使游戏挂机不掉线的方法 按键精灵挂机

用按键精灵使游戏挂机不掉线的方法——简介wow,激战2等等的游戏离开一会儿没操作就会自动被踢出。游戏战场排队都要几个小时,这时候去吃个饭,上个厕所什么的回来要重排几小时就很痛苦。下面介绍个用按键可以不掉线的方法,个人玩激战2两

学会用按键精灵获取子窗口句柄 按键精灵获取窗口句柄

学会用按键精灵获取子窗口句柄——简介电脑的桌面是最顶级的窗口,在桌面里的其他程序窗口是桌面的子窗口。那到底父窗口和子窗口是怎么理解的呢?学会用按键精灵获取子窗口句柄——工具/原料按键精灵2014学会用按键精灵获取子窗口句柄

网页按键精灵怎么用 精 按键精灵 网页填表

网页按键精灵怎么用 精——简介网页按键精灵可实现对网页的分析以及脚本的执行操作。充分合理的使用网页按键精灵,可完成自动填写网页表单、实现刷票及其它重要的操作。今天小编就以登陆百度经验账号为例 ,给大家讲解一下网页按键精灵

MFC中什么叫句柄 mfc 获取控件句柄

(句柄)HANDLEexplaination from microsoft:when you went to cinema,you bring a umbrella,and you want to have the peopel in cinema to keep the umbrella for you,thn you give them the umbrella,they give you a ticket to p

声明:《按键精灵获取窗口句柄 学会用按键精灵获取子窗口句柄》为网友偷得浮生半日闲分享!如侵犯到您的合法权益请联系我们删除