找回密码
 加入
搜索
查看: 5027|回复: 9

[GUI管理] 同一个button的control ID为什么会变?

  [复制链接]
发表于 2011-5-27 00:52:09 | 显示全部楼层 |阅读模式
具体是这样的:
我需要去自动操作一个软件,软件上有2个tab界面,当打开一个时另一个被隐藏了,每个界面都有许多个按钮 ,当你在这个界面上记录下莫一个按钮的Control ID 或者Advanced (Class)时 ,切到另一个界面再切回来,你刚才记录的那些值都变了。
我确定了Control ID 和Advanced (class)会变 , 总不能还要弱到要用mouseclick了吧,mouseclick在准确度上肯定还是会差很多的。

求高人解答啊!
发表于 2011-5-27 08:11:03 | 显示全部楼层
对于一次操作通过句柄可以保证在本次操作中的唯一性(一次操作是指不关闭程序的连续操作)
发表于 2011-5-27 11:04:51 | 显示全部楼层
类别名要变化,也是很常见的情况。点击这样的控件,只需for 一下,加if判断处理即可。
 楼主| 发表于 2011-5-28 00:25:50 | 显示全部楼层
回复 2# netegg
netgg大哥说的没错,一次操作中确实可以这样实现。
不过如果写一个自动化工具,需要经常性使用的话,每次打开时界面中各控件的句柄就会不同了,再加上ControlID也可能会自动改变,因此就找不到准确识别窗体控件的标识了。
不知道兄弟有没有好点的建议 ^_^
 楼主| 发表于 2011-5-28 00:29:45 | 显示全部楼层
回复 3# lingyunzu

这个与for循环有神马关系么? 比如我要点的是tab1页面中的[CLASS:Button, INSTANCE:3],然后切换到tab2页面,再切回来tab1页面,此时之前的button就不是[CLASS:Button, INSTANCE:3]了,如果for循环去点,那岂不是所有的Button都要点击?
发表于 2011-5-28 21:42:16 | 显示全部楼层
本帖最后由 飘云 于 2011-5-28 21:45 编辑

Button上有文字内容的吧,那就[CLASS:Button;TEXT:XXX]呗,另外还可以指定坐标X \ Y \ W \ H,不过我没用过不太了解。。。。
发表于 2011-5-29 19:54:01 | 显示全部楼层
回复 5# theoneluck


    因为你切换回去,那个类别名变了,比如先前button1 然后button3 这种,你可以根据情况,配合if使用点击,为什么不可以?
参考这个贴:http://autoitx.com/forum.php?mod ... 3%FB%2B%B1%E4%BB%AF
发表于 2011-5-29 19:57:52 | 显示全部楼层
反正我遇到的这种控件类别名经常变化的,使用for配合if使用,非常有效。屡试不爽。仅供参考
发表于 2011-6-9 13:35:00 | 显示全部楼层
发表于 2011-6-9 21:16:24 | 显示全部楼层
正在学习之中。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 01:13 , Processed in 0.081974 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表