按键精灵中关于子过程的基本语法问题

来源:百度知道 编辑:UC知道 时间:2024/06/15 10:46:41
按键精灵的教程中说关于sub的说明都是不带入参的,我如下使用总是不成功:
----------
k=1
gosub a(k)
...
sub a(x)
...
return
---------
执行时根本不进入sub a(x)所在行.
return后是否跟“a”都没有关系。

请教问题所在?
修正一下:
VBSCall who("aaa")
Sub who(cname)
msgbox("你好" & cname)
Return
EndScript
--------
结果报告“类型不匹配:who“
然后是消息框里永远只提示”你好“,貌似”aaa“没有传进过程中。
我用的6.7版本。
请教问题何在?

我来解答你吧:
1.按键精灵中子Sub(过程)与主过程(也就是主程序)是共用变量的,所有的返回值,进程参数都不需要。

例子:

//主程序中定义一个变量
aa="abc"
//调用过程
Gosub ss
//调用后ss的值会是"abcefg"
MessageBox("ss="&ss)

Sub ss
//直接使用主程序的变量,就当是实参传进来了吧
ss=aa&"efg"
Return ss

2.如果真的要定义一个子过程或函数(function),可以写在vbs区块,即VBSBegin开头,VBSEnd结尾的区域中。

你上面的内容可以写成:
VBSBegin
sub who(cname)
MessageBox("你好" & cname)
end sub
VBSEnd
VBSCall who("aaa")

因为是解释性的,vbs的过程要写在调用之前。

有不妥之处,百度消息