按键精灵判断执行代码

按键精灵的代码如下,DoKeyDown"Right",1Delay200FindPicUx,Uy,Ux+1024,Uy+768,"Attachment:\1.bmp",1... 按键精灵的代码如下,
Do
KeyDown "Right", 1
Delay 200
FindPic Ux,Uy,Ux+1024,Uy+768,"Attachment:\1.bmp",1,zijiX,zijiY
TracePrint zijiX
//调试得出返回的值为987,大于980,判断之后缺不执行下面的弹起按键代码,直接跳开了按键码,其他按键码是可以执行的,无论开头的右走,攻击打怪都可以,很灵敏。
If zijiX > Ux+980 Then
KeyUp "Right", 1
Delay 200
KeyDown "Left", 1
Delay 200
ElseIf zijiX>0 and zijitX < Ux+892 Then
KeyUp "Left", 1
Delay 200
End if
Loop

这个问题已经困扰了我一个多星期了,一开始以为找图出问题,后来多次修改后发现不是,后来以为是goto的问题,但是把goto用其他替换了也不行。
只要能解决,多少分都给。QQ632703185.
展开
 我来答
mutou2000
2012-12-22 · TA获得超过356个赞
知道小有建树答主
回答量:373
采纳率:0%
帮助的人:370万
展开全部
goto肯定可以替换,用do,。,,loop until就可以。
追问
但是现在我也已经用do替换了,还是不行,不能执行if下面的弹起按键,导致之前执行的右键一直按着
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
g420703
2012-12-23 · 超过25用户采纳过TA的回答
知道答主
回答量:67
采纳率:0%
帮助的人:69.4万
展开全部
你的Ux是多少,zijiX返回值是987,大于980,但zijiX就一定大于Ux+980 吗?
估计问题就出在 If zijiX > Ux+980 Then 这个上面
更多追问追答
追问
Ux=0,
这是之前定义的变量
Dim MyArray
MyArray=Split(sRect,"|")
Ux = CLng(MyArray(0))
Uy = CLng(MyArray(1))
追答
上面的脚本测试过了,如果Ux\Uy定义成功就没问题
如果Ux没定义成功,
FindPic Ux,Uy,Ux+1024,Uy+768,"Attachment:\1.bmp",1,zijiX,zijiY

照样可以找到图,但
If zijiX > Ux+980 Then

ElseIf zijiX>0 and zijitX < Ux+892 Then

这两个表达式全部都是不成立
你可以在前面加一句看看Ux是多少,如果是空的话就是定义Ux,Uy没成功
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f7c143e
2012-12-25 · TA获得超过1975个赞
知道小有建树答主
回答量:818
采纳率:60%
帮助的人:363万
展开全部
Dim MyArray
MyArray=Split(sRect,"|")
Ux = CLng(MyArray(0))
你在下面加一句
TracePrint Ux
看看UX是多少。可能还是你的if判断那里出错了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式