AHK 中循环的基本用法
在我们重复做一些事情的时候,就需要使用循环了。而 AHK 正是能将复杂的手动工作自动化的工具,循环自然必不可少。但 AHK 中的循环也是多种多样的,我们慢慢道来。
最简单的循环
最简单的情况,我们知道要循环多少次,比如想连续按下 10 次回车键:
Loop, 10
{Send, {Enter}
}
这样就可以了。在 Loop 后加上要循环的次数,然后大括号里边就是要循环执行的语句。当然我们可以先把循环的次数放进一个变量,这样更灵活些:
count := 10Loop, %count%
{Send, {Enter}
}
可以在循环体中使用 A_Index 来获取当前循环的次数。
或者有可能我们想一直循环执行:
Loop
{Send, {Enter}Sleep, 1000
}
这个就是死循环了,如果脚本不退出就会一直执行,某些情况我们确实需要这样。但更多情况,我们需要在满足某个条件时结束循环:
; 这个 stop 变量会在代码的其他地方修改,比如在某个定时器里
stop := falseLoop
{Send, {Enter}Sleep, 1000if (stop){break}
}
break 是用来退出循环的,continue 是用来结束当前循环,进入下一次循环的。这和其他语言都一致。
Loop Until 循环
上边的最后一种用法,即满足某个条件时结束循环,也可以用 Until 来实现:
stop := falseLoop
{Send, {Enter}Sleep, 1000
}
Until stop
看起来比刚才的要简洁一些。
While 循环
有些时候我们需要先判断条件,然后再决定是否要循环,这样虽然用 Loop 也能实现,但有些别扭,这时就可以用 While 循环了。
count := 0while (count < 10)
{Send, {Enter}Sleep, 1000count++
}
和
count := 0Loop
{if (count >= 10){break}Send, {Enter}Sleep, 1000count++
}
是等同的,使用哪个就看自己的习惯了。
更多内容
有些时候我们需要循环读取数组、读取字符串中的子字符串、读取文件内容、遍历目录下的文件甚至遍历注册表等,AHK 中都有很方便的用法,而无需让我们在 Loop 里写复杂的逻辑,我们会在之后的文章中了解到。
付费解决 Windows、Linux、Shell、C、C++、AHK、Python、JavaScript、Lua 等领域相关问题,灵活定价,欢迎咨询,微信 ly50247。
AHK 中循环的基本用法相关推荐
- python中循环语句的用法,python几种循环方式
python中while循环的用法是什么? python while循环语句:while 判断条件(condition):执行语句(statements)--执行语句可以是单个语句或语句块. 判断条件 ...
- Shell脚本中循环select命令用法笔记
在Shell脚本中,select命令是一种菜单扩展的循环方式. 语法结构如下: select Menu in (list) do command done 说明:当程序运行到select语句时,会自动 ...
- Shell脚本中循环until命令用法笔记
在shell脚本中,可以使用until执行循环处理,如果使用until命令的话如果表达式的结果为false时才执行循环体,直到测试表达式的值为true的时候才会 停止循环. 语法结果如下: until ...
- ahk编程_AHK 中 = 和 := 赋值运算符的用法
在接触一门新的编程语言后,了解如何对变量赋值几乎是第一步.有了变量,才可以对变量进行数学运算或者逻辑判断,将调用函数得到的结果存入变量也需要赋值操作.可见赋值运算符的重要性. 但很多 AHK 初学者( ...
- python和R数据类型查看、赋值、列表、for循环、函数用法对比示例
python和R数据类型查看.赋值.列表.for循环.函数用法对比示例 很多工程师可能刚开始的时候只熟悉python或者R其中的一个进行数据科学相关的任务. 那么如果我们对比这学习可以快速了解语言设计 ...
- matlab中fdyn,Matlab的用法总结
1. 对序列进行洗牌 randperm() randperm()产生随机的序列 %if filepaths 是一个5*1的结构体,then cshuffle = randperm(length(fil ...
- Java中Date各种相关用法
Java中Date各种相关用法 本文主要介绍Java中Date各种相关用法. AD: Java中Date各种相关用法(一) 1.计算某一月份的最大天数 Java代码 Calendar time=C ...
- html dom createevent,js 中 document.createEvent的用法
js 中 document.createEvent的用法 更新时间:2010年08月29日 23:22:02 作者: 用该方法创建了 Event 对象以后,必须用上表中所示的初始化方法初始化对象. ...
- C#中timer类的用法
C#中timer类的用法 关于C#中timer类 在C#里关于定时器类就有3个 1.定义在System.Windows.Forms里 2.定义在System.Threading.Timer类 ...
最新文章
- mysql查询转json数据库_数据库大师成长日记:将数据库SQL查询结果直接转为JSON...
- selenium+python headless 爬虫环境配置
- 7步搞定Python数据可视化,业界大牛出品教程,Jupyter、Colab都有在线版
- 微信小程序-豆瓣电影TOP250
- Java中switch语句支持的类型
- sap 提取字符串中汉字
- 算法导论学习笔记 第2章 算法基础
- 使用putty连接linux
- CF461D-Appleman and Complicated Task【并查集】
- mysql权限层级体系_MySQL权限体系介绍
- 【OSChina-MoPaaS应用开发大赛】豪美创新后台业务管理系统
- java put set_Java PutItemRequest.setItem方法代码示例
- [python] 函数小结
- 反思,今天总体感觉事情很简单,但项目比较多,没有掌握住很好的技巧,所以感觉很混乱
- python 两个变量同时循环_python基础篇(子非鱼)
- (转载)OC学习篇之---Foundation框架中的NSDirctionary类以及NSMutableDirctionary类
- 2022年最新四川建筑八大员(劳务员)模拟题库及答案
- 虚拟机服务器开放全部端口,查看虚拟机开放端口号
- 简单的sql注入之2WP
- 网工解惑?什么是路由器、交换机与防火墙,他们的区别与联系是什么?
热门文章
- JBOSS+EJB3之Entity 开发实例
- 区块链的爆炸式增长使其成为第二大热门需求技能
- Python写各大聊天系统的屏蔽脏话功能原理
- 【预告】腾讯移动分析 MTA 即刻登陆 2017 GMTC 全球移动技术大会
- 一对一培训之视频免费分享-2018-01-21-第 03 阶段-准备-基础-架构-01
- C++关键字Volatile的作用
- MongoDB实现ID自增长
- 浅入浅出 Android 安全:第三章 Android 本地用户空间层安全
- 每日英语:Losing It at the Movies: Silly Beats Sober in China's Box Office
- 为清理助手制作便利工具的技术实现