zhht080 发表于 2014-6-19 11:04:31

为什么下面的脚本有的时候跑的过去 有的时候会出错啊

Window("登录").SwfObject("SwfObject").Click 40,5
Window("登录").SwfObject("SwfObject").Type "1"
Window("登录").SwfObject("登录(┛)").Click 47,8
Window("系统").SwfObject("SwfObject").Click 79,499
Window("系统").SwfObject("SwfObject_2").Click 10,9
Window("系统").SwfObject("SwfObject_2").Type DataTable("p_KeyboardInput", dtGlobalSheet)
Window("系统").SwfObject("SwfObject_2").Click 10,9
Window("系统").SwfObject("SwfObject_2").Click 40,7
Window("系统").SwfObject("SwfObject_2").Type "56"
Window("系统").SwfObject("查询(F)").Click 26,11
Window("系统").Close
Window("系统").Dialog("提示").WinButton("确定").Click

出错都会发生在第5行,说对象已被禁用

lsekfe 发表于 2014-6-20 15:08:56

这个不好说,希望有QTP大神能来看下~

weihate 发表于 2014-6-22 22:05:33

加一个等待时间试试,是不是由第四步至第五步之间所需点击的对象还没有new出来。

auto_tester 发表于 2014-6-26 09:55:13

1 你在前面加个等待时间
2 直接把多余的那个直接删了:time:

黑羽祭 发表于 2014-6-26 16:15:31

回复 1# zhht080


    首先有可能是执行过快,可以适当的加一些等待时间。
然后我看到你的对象的名字是SweObject,而且操作都是坐标,说明有对应的控件插件没有安装,Flash对象没有识别出来。

wys702a8 发表于 2014-7-12 16:00:07

加等待时间

HopeKing 发表于 2014-7-12 22:46:15

加等待时间,或者在第五行针对Window("系统").SwfObject("SwfObject_2")对象操作前可以先用exsit判断一下,比如
if   Window("系统").SwfObject("SwfObject_2").exist(5) then'这里的5表示超时等待时间
   '针对该对象做操作
else
'提示对象不存在
end if
页: [1]
查看完整版本: 为什么下面的脚本有的时候跑的过去 有的时候会出错啊