怎样能够对控件中的控件操作?
本帖最后由 jd19970829 于 2011-2-21 01:20 编辑我使用AUTOIT窗口信息工具的时候,只能得到这个控件是一个BUTTON,但是很明显这个BUTTON种包含了很多其他的控件,比如这个窗口里面的选项,我用窗口工具只能得到它是Button 1,但是它里面包含了2个Checkbox控件,而我是要对这2个Checkbox控件进行勾选操作,再比如说这个电源控件,用窗口信息工具只能得到是一个BUTTON 5,但是它里面很明显是一个Combo控件,我也是要对这个Combo进行下拉选择操作,但是这些控件的信息我怎么能得到呢?也就是说我怎样能对一个控件里面的控件进行准确的操作,请指点一下。 调用ClientToScreen将客户区坐标转换为屏幕坐标,根据屏幕坐标 调用WinowFromPoint获取控件句柄。 回复 2# pusofalse
您说的几个函数都是MSDN里的,AU3没有, 不懂
{:face (382):} 是呀,这几个函数AU3里面都没有,而且肯定有其他的办法。
看这篇帖子
http://www.autoitx.com/archiver/tid-16956.html
ShellExecute("C:\Program Files\SogouInput\5.0.1.4185\config.exe")
sleep(800)
$pos = WinGetPos("搜狗拼音输入法设置")
If IsArray($pos) Then
$x=MouseGetPos(0)
$y=MouseGetPos(1)
WinActivate ("搜狗拼音输入法设置")
MouseClick ( "left",$pos+80,$pos+120,1,0)
ControlCommand("搜狗拼音输入法设置","切换英文状态时保留输入窗口中已经存在的字符并上屏","Button7","Check","")
ControlClick("搜狗拼音输入法设置","","Button89")
MouseClick ( "left",$pos+80,$pos+148,1,0)
ControlCommand("搜狗拼音输入法设置","开启皮肤推荐","","UnCheck","")
ControlClick("搜狗拼音输入法设置","","Button89")
MouseClick ( "left",$pos+80,$pos+236,1,0)
ControlCommand("搜狗拼音输入法设置","不自动升级","Button12","Check","")
ControlCommand("搜狗拼音输入法设置","P2P升级加速:使用P2P方法,使您的升级速度更稳定更快速","Button17","UnCheck","")
ControlClick("搜狗拼音输入法设置","","Button87")
MouseMove($x,$y)
EndIf
exit
这段代码里面
ControlCommand("搜狗拼音输入法设置","不自动升级","Button12","Check","")
ControlCommand("搜狗拼音输入法设置","P2P升级加速:使用P2P方法,使您的升级速度更稳定更快速","Button17","UnCheck","")
他这里的BUTTON12何BUTTON17确实是BUTTON空间里面的2个按钮空间,我已经测试过,能准确的对BUTTON立面的2个BUTTON控件进行操作,主要的问题是button12和button17他是怎么得到的,用串口信息工具是绝对看不到的,、他的代码里面也没有P版主说的用XX函数来找句柄的代码
真的很想知道他是怎样得到这些按钮的具体CLASS ID的 可以用Au3安装目录下的英文版 Au3Info 试试,也可以用我以前写的那个探测工具 http://www.autoitx.com/forum.php?mod=viewthread&tid=17882&extra=&page=1 回复 5# afan
多谢啊,测试了一下,果然是探测工具的问题,英文版的能探测出绝大多数的空间,中文版的很多控件中的空间就不能探测到,但是也遇到一个问题,及少数的控件中的控件中文版的能探测到,英文版的居然探测不到,真是不知道怎么回事,都是同一个工具,居然还有区别 COM
IAccessible? 还不会写呢,学习 可以用Au3安装目录下的英文版 Au3Info 试试,也可以用我以前写的那个探测工具
afan 发表于 2011-2-20 22:03 http://www.autoitx.com/images/common/back.gif
是个好东西。要收藏下。 {:face (382):}路过......
页:
[1]