马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
在调试代码时候,遇到报错:参数个数不匹配,这是新手最容易犯的一个错误,比如下面代码就是典型的参数个数不匹配几种例子[按键精灵] 纯文本查看 复制代码
Tap 100 //错误原因:参数少了一个。
Tap 100,200 //错误原因:中文标点符号不能做参数分隔符。
Tap 100,200,300,400 //错误原因:参数多了两个。
Dim xy
xy = "100,200"
Tap xy //错误原因:xy是一个字符串数据,并非两个参数。
Dim arr
arr = Array(100, 200)
Tap arr //错误原因:arr是一个数组,并非两个参数
Dim t
t = {100, 200}
Tap t //错误原因:t是一个table表,并非两个参数
首先理解什么是参数,参数是传入命令里面的数据,比如说“拿两个苹果”,“拿”是动作命令,“两个”是第一个参数,“苹果”是第二个参数。代码命令也是一样的,比如Tap()点击命令,两个参数分别是横坐标与纵坐标。
接着来看“个数不匹配”,从字面上意思理解就是参数的数量不对。还是用“拿两个苹果”举例子,如果少了第一个参数,就不知道几个苹果,如果少了第二个参数,就不知道拿什么东西。两个参数缺一不可。Tap()点击命令也一样,少一个参数就不知道具体要点击哪个位置。
最后来理解代码参数要怎么写,在代码中,每一个参数之间是用英文逗号隔开的,大部分命令都规定了每一个参数的意义,不能擅自理所当然的修改参数意义。例如Tap()命令第一个参数是横坐标,你不能擅自传入一个字符串"x,y"作为第一个参数,说已经把坐标放进去了。
下面是正确的代码例子
[按键精灵] 纯文本查看 复制代码
Tap 100, 200 //补上缺少的参数。
Tap 100,200 //把中文逗号换成英文逗号
Tap 100,200 //删除多余的参数
Dim xy
xy = "100,200"
Dim xyArr
xyArr = Split(xy, ",")
Tap CLng(xyArr(0)), CLng(xyArr(1)) //分割字符串内容作为参数传入,当然也可以用紫猫插件的zm.tap来解决
Dim arr
arr = Array(100, 200)
Tap arr(0), arr(1) //传入数组两个元素做参数
Dim t
t = {100, 200}
Tap t[1], t[2] //传入table表两个元素做参数
|