按键精灵下标越界,无法正常运行后面的语句怎么解决啊
Text=Plugin.File.ReadFileEx("D:\ProgramFiles\按键精灵9\数字\test.txt")DimMyArrayDimname(13)...
Text = Plugin.File.ReadFileEx("D:\Program Files\按键精灵9\数字\test.txt")
Dim MyArray
Dim name(13)
MyArray = Split(Text, " ")
If UBound(MyArray) >= 0 Then
i = 0
For UBound(MyArray)
i = i + 1
Next
End If
name(1) = myarray(0)
name(2) = myarray(1)
name(3) = myarray(2)
name(4) = myarray(3)
name(5) = myarray(4)
name(6) = myarray(5)
name(7) = myarray(6)
name(8) = myarray(7)
name(9) = myarray(8)
If name(1) = 1 or name(1) = 2 or name(1) = 3 or name(1) = 4 or name(1) = 5 or name(1) = 6 or name(1) = 7 or name(1) = 8 or name(1) = 9 or name(1) = 0 Then
MessageBox name(1)
Else
EndScript
End If
本来是要获取到0-9的10个数字的,但是有时候会出错,变成一个横杠-后面就没有了,然后按键精灵就提示下标越界,下面语句也不能正常执行了。获取到的是-的话也不会直接结束脚本。。= =求高手帮我。其实我只要是获取到的不是数字就直接结束脚本就可以了。。请问怎么修改可以正常运行或有没有更简单的方法? 展开
Dim MyArray
Dim name(13)
MyArray = Split(Text, " ")
If UBound(MyArray) >= 0 Then
i = 0
For UBound(MyArray)
i = i + 1
Next
End If
name(1) = myarray(0)
name(2) = myarray(1)
name(3) = myarray(2)
name(4) = myarray(3)
name(5) = myarray(4)
name(6) = myarray(5)
name(7) = myarray(6)
name(8) = myarray(7)
name(9) = myarray(8)
If name(1) = 1 or name(1) = 2 or name(1) = 3 or name(1) = 4 or name(1) = 5 or name(1) = 6 or name(1) = 7 or name(1) = 8 or name(1) = 9 or name(1) = 0 Then
MessageBox name(1)
Else
EndScript
End If
本来是要获取到0-9的10个数字的,但是有时候会出错,变成一个横杠-后面就没有了,然后按键精灵就提示下标越界,下面语句也不能正常执行了。获取到的是-的话也不会直接结束脚本。。= =求高手帮我。其实我只要是获取到的不是数字就直接结束脚本就可以了。。请问怎么修改可以正常运行或有没有更简单的方法? 展开
2个回答
展开全部
表示没看出来 i 是什么......
就是找数字呗....
Dim MyArray = Split(Plugin.File.ReadFileEx("D:\Program Files\按键精灵9\数字\test.txt")
, " ")
i = UBound(MyArray)
Dim name(13)
If i >= 0 Then
For i
j=cint(MyArray(i) ) //cint强制转型
If j >= 0 and j < 10 Then //表示是数字
name(i)=cint(MyArray(i) )//其实这name我就感觉多余....不过不清楚你具体要干啥 还是按照你原有功能来吧....
MessageBox name(1)//我挺不明白为啥要弹出1....
Else //不是数字一次就结束了么?
EndScript
End If
i = i - 1
Next
End If
这个...你要的功能...不明觉厉啊...好久没写按键了...如果有语法错误自己改下吧=,=!
就是找数字呗....
Dim MyArray = Split(Plugin.File.ReadFileEx("D:\Program Files\按键精灵9\数字\test.txt")
, " ")
i = UBound(MyArray)
Dim name(13)
If i >= 0 Then
For i
j=cint(MyArray(i) ) //cint强制转型
If j >= 0 and j < 10 Then //表示是数字
name(i)=cint(MyArray(i) )//其实这name我就感觉多余....不过不清楚你具体要干啥 还是按照你原有功能来吧....
MessageBox name(1)//我挺不明白为啥要弹出1....
Else //不是数字一次就结束了么?
EndScript
End If
i = i - 1
Next
End If
这个...你要的功能...不明觉厉啊...好久没写按键了...如果有语法错误自己改下吧=,=!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |