按键精灵计算机怎样写,按键精灵脚本讲解(5)条件判断语句

条件判断语句

假如我们要检查屏幕上某个点是否为黑色,进而让按键精灵执行其他语句,这就需要不断地去检测。要让按键精灵为我们检测,可以利用条件判断语句不断地去验证。

下面是“控制命令”上的辅助区域。

下面针对上图着重解释一些相关概念:

表达式:其实就是算式,不过这个算式突破了中学数学里面仅仅是数字之间的计算,它的运算因子和结果中还可以是字符串或布尔值(布尔值的个数只有两个,就是真和假),甚至是没有任何计算的单个变量或数字、字符。这里是重要的内容,请竖起耳朵。

数字之间的计算:有基本的带括号的加减乘除四则运算,也可借助VBS提供的函数,实现三角函数、对数、绝对值等等复杂的计算。这个是中学的知识。

字符串的计算:字符串就是一串字符(废话),虽然不能用加减乘除,但可以串接、拆分。比如表达式"wa"

& "haha"的结果为"wahaha"。

布尔值的计算:用常识来理解这个什么布尔值吧。布尔值就是真或假。什么地方才谈得上真假呢,当然是判断的时候。举个例子:“1+1=3”这个表达式为假,“1+1=2”表达式为真;“1+1>3”为假,“1+1<3”为真;“1+1=2并且1+2=3”为真,“1+1=2或者1+1=3”也为真。布尔值非常重要,按键精灵的条件判断就是检查接受判断表达式的布尔值。

没有计算的表达式:就是单个的数字、字符串或变量,表达式的运算(实际上没有运算)结果就是这个数字、字符串或变量。

各种计算之间的关系:数字、字符串、布尔值这些看似毫不相干的东东,都统一在数字这个概念上。我们平时说的数字化,其实就是将现实中的东西描述成有一定结构关系的数字,然后用计算机处理这些数字。

字符是人类的语言,数字计算机是无论如何无法理解的。但我们可以把字符编号,通过程序告诉计算机。比如我们现在的计算机通用的字符编号就告诉计算机:回车符编号为13、A编号为65、a编号为97、1编号为49(注意:这里是字符1,要加引号同数字1相区别,比如var="1"和var=1是完全不同的),这其实就是大名鼎鼎的ASCII码(点击查询)。

布尔值是真或假,也是和数字有密切关系的。在按键精灵中,真(vbTrue)可以用不是0的值来表示,假(vbFalse)就用0来表示。注意:这里的vbTrue和vbFalse的两头没有加引号,表明它们不是字符串,也不是数字,而是一个其它的值,名字就叫布尔值。

取值为真:就是上面说的vbTrue,可以用非0数字来代替。

执行后面的语句:就是按键精灵执行判断语句之后,“条件结束”之前的语句,这也是我们要求按键精灵判断的目的所在。

循环执行:就是按键精灵重复执行判断语句之后,“循环执行”之前的语句。当条件不再满足时(vbFalse),就不再执行循环中的名字。循环中间的一条或多条语句被称为“循环体”。

整个语句连起来可以读成:如果表达式xxx为真(成立),那么就执行后面的语句(循环执行)。

有了条件判断语句后,就可以使按键精灵具有一定的智力。我们可以让它监视某些值或某些点的颜色,当这些值或点色满足你的要求后,就让按键精灵采取进一步行动,否则就再判断或干其它的。

第七课:子程序

我们如果要按键精灵执行相同或相似的程序,可以用子程序先写在一边,然后让按键精灵在需要的时候去找到它,执行它里面的语句。比如上一课的那个例子,我们让按键精灵执行的动作都是移动到某一个点,然后点击,再等待1秒。可以看出除了第一步有一些数据上的区别外,其他的都一模一样。为了让脚本变短,更容易写正确,我们可以把相同的功能写到一个子程序里,让子程序根据情况进行操作。请先看下面写好的脚本:

如果(50,50)的颜色等于 #0 则

(VBScript)语句 x=100

(VBScript)语句 y=100

调用子程序 mysub

条件结束

如果(50,50)的颜色等于 #ffffff 则

(VBScript)语句 x=200

(VBScript)语句 y=200

调用子程序 mysub

条件结束

脚本停止运行

子程序 mysub

鼠标移到 x,y

左键单击

延时1000毫秒

子程序结束,回到调用处

值得注意的是,在子程序之前有一个语句叫脚本停止运行,这是比较重要的一句,脚本到此就停止了,不再往下执行,然后根据循环的设置,决定是否开始下一次的执行。

从脚本长度来看,似乎并没有缩短,但你想想,要是需要子程序执行的内容多了,或者要判断的窗口多了,这一课讲得例子就很能节约篇幅了。子程序的更重要好处还在于让脚本的逻辑清晰,一次编写多次使用。修改的时候就更惬意了,只需要改动子程序这一处地方,就可以得到一个全新功能的脚本。

当然,用不用子程序还全靠个人喜好,你完全可以用Goto

标识,语句找到相关的语句,然后再这些语句执行完以后跳回。不过跳回的地方是固定的,不如子程序根据实际情况变化。如本例中,子程序执行完后回到的调用处有两个。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值