fuinei 发表于 2012-4-6 15:34:31

[已解决]关于无法获取控件ID时的问题

本帖最后由 fuinei 于 2012-4-9 12:20 编辑

各位好,上周我在测试自动配置outlook数据文件时遇到了创建数据文件窗口中的“确定”按钮无法控件ID,目前使用模拟按键方法完成的,代码如下:WinWait("")
WinActivate("")
ControlSetText("","","RichEdit20W2","c:\email")
Send("{ENTER}")
WinWait("")
WinActivate("")
ControlSetText("","","RichEdit20W2","abc")
Send("{ENTER}")测试的过程有偶尔会出现无法完成配置的情况,参考论坛中的其它贴子曾尝试使用鼠标点击的方法完成Opt("MouseCoordMode", 0)
WinWait("")
WinActivate("")
ControlSetText("","","RichEdit20W2","c:\email")
$pos = WinGetPos("")
MouseClick("left",$pos+540,$pos+240)
WinWait("")
WinActivate("")
ControlSetText("","","RichEdit20W2","abc")
$pos = WinGetPos("")
MouseClick("left",$pos+540,$pos+240)但感觉效果还不如模拟按钮,上面的两种方法都可能操作失败,请问各位有没有其它准确率更好的方法呢?
另外,请问对于鼠标点击时的获取窗口的相对位置有没有什么比较好的工具?AU3info中的鼠标信息获取的信息是屏幕的绝对位置

星雨朝霞 发表于 2012-4-6 20:39:45

这个窗口从那里打开,?

502762378 发表于 2012-4-6 21:20:53

就outlook窗口的项目栏的打开数据文件,效果和FileOpenDialog一样

星雨朝霞 发表于 2012-4-6 21:58:59

可能我这版本太低的!没看到这个界面..

fuinei 发表于 2012-4-6 22:51:09

这是安装outlook2003后添加个人数据文件时的窗口

星雨朝霞 发表于 2012-4-7 10:13:31

ControlSend('','','','{enter}')直接向窗口发送回车键就行了.

manlty 发表于 2012-4-7 10:32:23

本帖最后由 manlty 于 2012-4-7 10:33 编辑

不可能的,这个对话框是windows的标准对话框,“确定”按钮肯定有ID的,你搞错了吧,应该是在“控件”选项里看该按钮的ID信息

502762378 发表于 2012-4-7 10:45:40

不知道楼主第一段代码为什么要跑两遍,只是发送的个人文件夹地址不同?
还有在为RichEdit20W2发送完地址,焦点在RichEdit20W2,你试着send两个TAB试试

fuinei 发表于 2012-4-7 11:25:37

回复 6# 星雨朝霞

这个方法应该会比我原来直接使用send的方法好,今天用的PC不具备测试环境,周一上班后测试一下,谢谢指导!

fuinei 发表于 2012-4-7 11:27:03

回复 7# manlty

这个窗口确实没有控件ID,在配置Outlook 2003时还有一个确定姓名的“OK”按钮也是无法获取控件ID的,目前也是使用模拟按键的方法操作。

fuinei 发表于 2012-4-7 11:33:25

回复 8# 502762378

请问502762378兄指的是ControlSetText吗?
第一个是修改保存路径的,第二个确定创建的个人数据文件夹名称。
代码是多写一个winwait和winactivate主要是想尽量增加按键的准确率。
另外,请问有没有什么推荐的比较好的工具可获取控件/窗口的相对位置?

afan 发表于 2012-4-7 12:20:03

回复 11# fuinei


    http://www.autoitx.com/thread-17882-1-1.html

fuinei 发表于 2012-4-7 14:53:49

回复 12# afan
谢谢afan版主的指导,前段时间在安装IE7时有人曾介绍过这个工具,当前下载了只用于获取控件ID(该工具比AU3info好用一点,部分不能获取控件ID的窗口该工具仍可以),原来这个工具获取的坐标还可以在“屏幕”,“用户”和“控件”间切换,再次感谢!

fuinei 发表于 2012-4-9 12:18:36

回复 6# 星雨朝霞

测试可完成操作,谢谢!

yufei8051 发表于 2012-11-7 09:24:56

记号。谢谢楼主开帖让我也跟着学习
页: [1]
查看完整版本: [已解决]关于无法获取控件ID时的问题