• 首页
  • 教程
  • 资源
  • 脚本
  • 源码库
  • 卖脚本
  • 用户中心
  • 作者成长
加入收藏  返回官网
你的位置:按键精灵资源站 >> 知识库

循环结构

一、循环结构

    循环结构可以减少脚本重复编辑的工作量,循环是指在指定的条件下多次重复执行一组语句,这是最能发挥脚本特长(重复执行)的结构,被重复执行的一组语句称为循环体。

    例如:统计一个用户到目前为止已经敲击了多少下键盘,每个键各是多少等。

    在按键中主要的循环语句有For ...Next/Do ...Loop/While...Wend,退出循环语句Exit。最常用的是For...Next语句。

二、FOR...Next循环语句

    For...Next是按指定的次数执行循环体,在按键中For最典型的写法是For 循环次数。

    For 3

      TracePrint 1

    Next

    这样子的语句在实际执行过程当中循环体里面的TracePrint会被执行3遍,这在调试状态下可以很明显地看到输出3个1。

    另外一种写法则是要设置循环的开始、结尾还有步长。如上面的例子可以改写成:

    For i=1 To 3 Step 1

      TracePrint 1

    Next

    运行一次,我们发现结果都是一样的,仍然是输出3个1。这是为什么呢?

    从For i=1 To 3 Step 1,这一句可以简单地理解成 设置i=1 到 3 步长为1。这样子理解的话,我们就会发现,从1到3每次加1。那么加3次刚好到3,于是结束循环。此外若步长值为1,则Step 1可以省略。

 

三、Do...Loop循环语句

    Do...Loop有两种格式:前测型循环结构和后测型循环结构。两者区别在于判断条件的先后次序不同。

    格式:

    Do {While|Until}

        循环体

    Loop

    Do While...Loop语句的功能:当条件成立时,执行循环体。当条件不成立时,终止循环。

    示例:

    a=1
    Do While a = 1
        MessageBox 1
    Loop

    这个例子,当a=1时就会进入这个循环一直执行。当把a的值改成0的时候,这个时候在刚开始的判断时就已经不成立,所以脚本直接跳到Loop后面继续执行。

    Do Until...Loop(直到型循环)语句的功能:当条件不成立时,执行循环体,直到条件成立是,终止循环。

    示例:

    a=0
    Do Until a = 1
        MessageBox 1
    Loop

    而Do Until 刚好有Do While相反,当a不等于1时脚本会一直执行循环体里面的内容,直到a=1为止。

 

四、While...Wend循环结构

    我们在前面已经看到了Do While...Loop了,而While...Wend的执行顺序刚好跟Do While...Loop的顺序和条件是一样的。

    a=1
    While a = 1
      MessageBox 1
    Wend