有时候需要对外部程序的操作,我们都需要获取到外部程序窗口的句柄,常会用findwindow函数,对于易语言怎样操作呢
这时举一个具体例子来说明,如这是QQ电脑端与手机QQ的互发消息的外部程序窗口,我们需要获取这个窗口的句柄
打开易语言,新建一个windows窗口程序,简单添加一个按钮和编辑框这两个组件
我们看一下这里需要用到的命令“取所有窗口列表 ()”,提示显示为--取当前打开的所有窗口列表。成功返回窗口句柄数组,失败返回空。
因为返回的为句柄数组,添加一个局部数组变量,把返回的结果放入变量中,执行后,所在运行的程序的句柄就会添加到数组中
添加计次循环函数,计次次数为这个数组的成员数,为了取出我们需要的目标窗口句柄,我们需要窗口的标题去判断,命令--取窗口标题 (),这样就可以获得所有活动窗口的标题了
Destiny李的 Android手机
接下就是判断一下,获得到的那个窗口标题与我们需要的窗口的标题是一样的,看一下代码
来对比一下,所获得窗口句柄是对的,所有的代码如下,比较简单,只需要修改标题即可套用:
.版本 2
.支持库 eAPI
.局部变量 窗口句柄数组, 文本型, , "0"
.局部变量 n1, 整数型
窗口句柄数组 = 取所有窗口列表 ()
.计次循环首 (取数组成员数 (窗口句柄数组), n1)
.如果 (取窗口标题 (到整数 (窗口句柄数组 [n1])) = “Destiny李的 Android手机”)
编辑框1.内容 = 窗口句柄数组 [n1]
.否则
.如果结束
.计次循环尾 ()