如何精确定位每个控件,用于controlsend,controlclick?
如何精确定位每个控件,用于controlsend,controlclick?一个程序,有很多控件,在不同页面,同一类型的控件如edit有多个,它的ID是同的,怎么做到区分呢?
问:一个程序启动多个,里面的控件如何区分?
问:程序每次启动,控件ID都不变的吗? 问:一个程序启动多个,里面的控件如何区分?
以一个窗口为单位的 想办法区分就是
问:程序每次启动,控件ID都不变的吗?
基本上都是这样的 但是部分安装程序和一些自建控件会没有也会改变 不过 标准窗体是不会实现这个问题的 直接定义句柄变量可能方便些吧,对于多窗口应该也适用,句柄应该是唯一的 好。对提出的句柄方法,在学习中。大家有好的方法也贴一点代码来学习一下。
以下是帮助文件的例子: ; 找到一个含有文本 "this one" 的记事本窗口并获得其句柄
; 改变窗口匹配模式,使程序支持类别名和句柄
AutoItSetOption("WinTitleMatchMode", 4)
; 获得含有文本 "this one" 的记事本窗口的句柄
$handle = WinGetHandle("classname=Notepad", "this one")
If @error Then
MsgBox(4096, "错误", "无法找到该窗口")
Else
; 直接发送一些文本到该窗口的编辑框中
ControlSend($handle, "", "Edit1", "AbCdE")
EndIf
页:
[1]