快速业务通道

按键精灵 脚本-学习VBS的一个不错的教程

作者 佚名 来源 ASP编程 浏览 发布时间 2013-07-09
今天我就从总体上对VBS进行介绍,希望能给大家一个直观的印象。另外,讲解与按键官网的按键精灵教程(李悦制作)相结合,帮大家看懂这个东东。
一、概述
要让计算机做事情就必须由人给它指令。原来的指令很复杂,都是些0011001之类的东西,后来逐渐简化,指令也更接近于人类的语言。VBS(Microsoft(R)VisualBasic(R)Scripting)也是高级语言的一种,和其他高级语言相比,它有简单易学的特点,是电脑初学者涉足编程领域的良好入口。
如果说从低级语言进化到高级语言是人类控制计算机的战略问题,那么具体的设置变量、循环就是控制计算机的具体战术问题。我们现在学习的也就是用VBS让计算机为我们工作的战术。
二、从最简单的东西入手。
网络叫卖脚本:
vbsi
vbsi=10
whilei>0
SayString卖XXX,价格面议。
vbsi=i-1
delay10000
endfor
看到这个脚本很多人就嗤之以鼻了,实现不断叫卖的方法很多,有的比这个脚本简单几倍。但随着讲解的进行,我们会发觉VBS提供给我们的是一个强大的工具。下面先来这几行都是什么意思。
vbsi//告诉计算机有个叫i的变量。
vbsi=10//这个变量为10
whilei>0//当这个变量大于0的时候就执行下面直到看见第一个endfor的地方。
SayString卖XXX,价格面议。//按键语句:输出文字
vbsi=i-1//这个变量减去1,然后又把减1后的数作为i的值。
delay10000//按键语句:暂停10秒(10000毫秒)
endfor//回到while处
效果:叫卖10次后就结束。
现在我要花点力气解释一下为什么要折腾出这么多麻烦的东西。
变量的用处和重要性
其实这个程序完全可以写成
SayString卖XXX,价格面议。
delay10000
SayString卖XXX,价格面议。
delay10000
……重复N次
SayString卖XXX,价格面议。
delay10000
其实再复杂的程序段都能被还原成顺序的程序,用很多复杂的东东不是为了显示编程能力,而是为了给自己方便。
当我们一直卖XXX的时候可能没有什么感觉,但当我们卖YYY的时候呢?要全部改过吗?或者我们要重复1000次,后来只重复500次了,难道要认真地数500下,然后删除后面的吗?当然,我们编这个小程序改起来还比较惬意。但要提高发展就得做大程序,还必须要依靠我们的变量朋友。
变量其实是一个字符代号,象你我的名字一样,为的是把各个变量区别开来,让他们分头工作。为变量取名字的时候可以用数字、字符、和下划线,但不可以用汉字、空格和其它奇奇怪怪的符号,另外数字不能用于第一个字符。
在使用变量之前要先写一个象vbsi这样的语句,意思是现在本人指派一变量,取名为i,参加到这个程序运行中。其实你可以不用履行这样的报名程序,直接在程序的某处使用i,但实践证明这是一个不好的习惯,让你写大程序的时候寸步难行。
然后vbsi=10则告诉程序,这个变量i现在的值为10,以后凡是用到i的地方,就相当于是10在那里。比如vbsj=i+1其实就相当于j=10+1,所以j的值为11。
变量的魅力不仅在于它可以代替数字,而且还可以代替字符,但和数字比起来,字符有其特殊性。
比如:
vbsi="字符"
vbsj="串接"
vbsa=i&j
此时a就是字符串接。注意这里出现的两个新符号:"号和&符号。可能有人已经猜出来他们的作用了。"号之间的内容为字符。电脑对vbsi=10和vbsi="10"有着截然不容的理解。&号为字符串接号。如果a=j&i,那么a就是串接字符。
知道了变量的用法后,我们就可以把叫卖程序改得更有趣。比如我们想让程序说不同的话,先说10次卖XXX,再说10次卖YYY。那我们就可以写成:
vbsi
vbsi=10
whilei>0
ifexpressioni<=5
SayString卖XXX,价格面议。
endif
ifexpressioni>5
SayString卖YYY,价格面议。
endif
vbsi=i-1
delay10000
endfor
其实我们用了个编程的小技巧,就是用变量i的大小控制程序的走向。可见前5次卖YYY,后5次卖XXX。
或者我们先叫XXX一次,再叫YYY一次,然后重复前面的动作:
vbsi
vbsi=10
whilei>0
ifexpressionimod2=0
SayString卖XXX,价格面议。
endif
ifexpressionimod2=1
SayString卖YYY,价格面议。
endif
vbsi=i-1
delay10000
endfor
这里也用了一个用i控制程序运行的方法。mod是和+、-、*一样的运算符号,作用是取余数。如10mod2=0的意思是10除以2,其余数是0。同样9mod2=1,8mod2=0,7mod2=1,6mod2=0,5mod2=1……
哎呀,暂时写到这里。

其实这个脚本是按键精灵下的脚本,没有写清楚,不好意思啊,如果想看vbs教程,建议下载一份 vbscript手册,然后看脚本之家的vbs栏目的前期发的文章。开始的时候基础发的多一些。
http://www.jb51.net/books/210.html
微软官方的Vbscript参考手册

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号