用于封装的命令主要有两个: Function 和 Sub
两个命令的功能基本上相同, 只是Function 除了包含Sub的功能外,还可以额外的附带函数返回值, 所以基本上在实际应用中更多的会选择使用Function 命令封装函数.
|
就和宠物小精灵一样~~平时放在精灵球里,需要的时候再把精灵球一丢~~~~~
命令名称 | Function |
命令功能 | 定义、封装一个函数 |
命令参数 | 函数名:任意有效标识符。 执行语句:任意有效代码语句。 自定义参数:可选参数,允许多个,任意有效标识符 |
返回值 | 可选,自定义返回值 |
在封装和使用函数时需要注意几点
|
简单的范例:
- Call 加法计算(1,5)
- Function 加法计算(v, v1)
- TracePrint v+v1
- End Function
复制代码
这段代码就是很简单的一个能够用来计算两个参数之和的函数。用function 把代码封装起来之后, 可以使用call + 函数名 来调用这个函数。
上面的这段范例是不带返回值的函数, 那下面就再说下函数返回值。
什么是函数返回值?
|
带返回值的函数:
- TracePrint “1+5=” & 加法计算(1,5)
- Function 加法计算(v, v1)
- 加法计算 = v+v1
- End Function
复制代码
上面代码就是附带函数返回值的用法,函数中把参数v和参数v1两个相加的值作为函数的返回值。
赋值返回值的时候也很简单,只要把函数的名称当成是变量名来用就行了。
命令名称 | Sub |
命令功能 | 定义、封装一个子程序 |
命令参数 | 子程序名:任意有效标识符 执行语句:任意有效代码语句 自定义参数:可选参数,允许多个,任意有效标识符 |
返回值 | 无 |
sub的用法和Function一致。唯一的区别就是sub函数不能有返回值。只能直接被调用。
- Call 加法计算(1,5)
- Sub 加法计算(v, v1)
- TracePrint v+v1
- End Sub
复制代码
什么情况下我们需要把代码封装成函数进行调用呢?
|
把需要重复调用的代码封装起来,这样可以极大的减少了代码行数,并且在使用的时候方便。比如我们时常会遇到需要滑屏的操作,需要使用touchdown命令来进行滑屏,但是一整套命令写下来太麻烦了,如果每次滑屏都需要好几行代码来实现,那就太累了。这种情况我们就可以把这滑屏的功能封装成函数,之后只要调用函数就可以实现滑屏。
- Function SwipeEx(x, y, x1, y1, t)
- TouchDown x, y, 1
- TouchMove x1, y1, 1, t
- Delay 300
- TouchUp 1
- End Function
- //用1000毫秒的时间从200, 100滑动到500, 100
- Call SwipeEx(200, 100, 500, 100, 1000)
- //用2000毫秒的时间从100, 562滑动到966,582
- Call SwipeEx(100, 562, 966, 582, 2000)
复制代码
这样就可以大大的缩短代码长度
把独立的功能模块封装成函数进行调用,这样做的最大的好处就是可以让代码看上去简洁有序,提升代码的可读性和逻辑结构稳定性,同时也方便了之后代码的后期维护。
我们来用两端同样功能的代码对比下
- Tap 520, 663
- Delay 500
- InputText 账号
- Delay 1000
- Tap 200, 600
- InputText 密码
- Delay 3000
- Tap 500, 900
- Tap 486, 695
- Delay 3000
- Do
- Tap 500, 980
- Delay 1000
- Loop
复制代码
- Call 输入账号(账号, 密码)
- Delay 1000
- Call 登录()
- Call 执行任务()
- Function 输入账号(账号,密码)
- Tap 520, 663
- Delay 500
- InputText 账号
- Delay 1000
- Tap 200, 600
- InputText 密码
- End Function
- Function 登录
- Tap 500, 900
- Delay 5000
- End Function
- Function 执行任务
- Tap 486, 695
- Delay 3000
- Do
- Tap 500, 980
- Delay 1000
- Loop
- End Function
复制代码
大家对比下这两端代码,哪段看着更易懂?上面的代码把所有功能步骤全部写在一起,如果不加注释的话很可能过段时间自己都忘了哪部分是什么功能了(并且不加注释是新手很容易犯的小错误)。而第二段代码,把每个单独的部分封装成函数,代码主体只需要分别调用这些函数就够了,简单明确。后期也好维护,哪段有问题就改哪段,不用动其他的部分。
本站所有文章,如无特殊说明或标注,均为本站原创发布。
任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。
如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。