入门篇(打好基础)
安装&准备:
1,下载:到AutoHotkey官网下载安装包.简单,直接下一步即可.这里
2,文本编辑器:用"记事本"也可写,但推荐用特化的编辑器,比如:Notepad++,SublimeText,VSCode(安装AHK插件).方便代码高亮,自动补全.
3,运行脚本:写好脚本文件(.ahk后缀),双击即可运行.右击文件,可选择"RunScript".
4,编辑脚本:右击文件,选择"EditScript".
基本语法:(必须掌握)
1,注释:用分号;注释,解释代码作用.
2,热键:用::定义热键.比如:^!a::(Ctrl+Alt+a)
3,变量:用=赋值.比如:myVar:="Hello,World!"
4,串:用双引号""定义.
5,数字:直接输入即可.
6,式:用来计算.比如:result:=1+1
7,函数:用中``返回结果.比如:MyFunction(a,b){returna+b}
8,流程控制:if...else(条件判断),循环(循环).
9,重要提示:AHK,区分大小写.
常用命令:(必选技能)
1,MsgBox:显示消息框,用来调试,提示.
2,Send:模拟键盘输入.比如:Send,Hello,World!
3,SendInput:比Send更快,但可能不支持一些特殊的程序.
4,MouseClick:模拟鼠标点击.
5,MouseMove:移动鼠标.
6,工具提示:显示气泡提示.
7,休息:挂起运行脚本.
8,WinActivate:激活窗口.
9,WinClose:关闭窗口.
10,WinGetActiveTitle:取当前窗口标题.
11,FileRead,FileWrite:读写文件.
12,运行:运行程序或文件.
重点:熟练掌握这些基本命令,就能实现简单的自动化任务.
第一个脚本(Hello,World!):
cpp
;`autohotkey`
;注释:这是简单脚本,用来显示`"Hello,World!"`
^!h::;Ctrl+Alt+h(热键)
MsgBox,Hello,World!;显示消息框
return;结束
运行该脚本,按下Ctrl+Alt+h,就能看到一个"Hello,World!"的消息框.
练习:试修改热键,修改消息内容.
二,进阶篇(提升技能)
热键进阶:
1,组合键:^(Ctrl),!(Alt),#(Win),+(Shift).比如:^+a::(Ctrl+Shift+a)
2,修饰符:*(通配符,可禁止按键自身的动作),$(强制发送按键)
3,按键名:Space,Enter,Tab,Esc,LWin等等.
4,鼠标键:LButton,RButton,MButton.
5,自定义热键:可设置程序特定的热键.
6,案例:屏蔽窗口键,创建一个全局热键,等等.
变量进阶:
1,全局变量``vs``本地变量:全局变量,在脚本中常见.本地变量,只在函数中有效.
2,环境变量:用%取环境变量.比如:%A_ProgramFiles%
3,内置变量:AHK自带很多内置变量.比如:A_ScreenWidth,A_ScreenHeight,A_YYYYMMDD,A_Hour等等.
4,数组:使用[]定义数组.比如:myArray:=["apple","banana","orange"].
5,对象:更复杂的数据结构,比如"映射".
案例:记录鼠标位置,取当前时间,等等.
函数进阶:
1,函数定义:用函数名(参数1,参数2){...return...}定义函数.
2,参数传递:参数可以是变量,式.
3,返回值:用中``返回结果.
4,变参:函数可接受可变数量的参数.
5,递归:函数可调用自己.
案例:定义一个函数,计算两个数的和.定义一个函数,实现串的替换.
窗口控制:
1,取窗口信息:WinGetTitle,WinGetClass,WinGetPID,WinGetPos等等.
2,控制窗口:WinActivate,WinClose,WinMinimize,WinMaximize,WinRestore,WinMove等等.
3,查找窗口:使用"窗口标题","窗口类名","窗口PID"等,查找.
案例:自动打开程序,自动关闭程序,自动移动窗口,等等.
文件操作:
1,读写文件:FileRead,FileWrite,FileAppend,FileDelete等等.
2,目录操作:DirExist,FileExist,FileSelectFile,FileCreateDir,FileRemoveDir等等.
3,遍历文件:使用循环,遍历目录下的文件.
案例:读取文本文件,写入文本文件,自动备份文件,等等.
三,精通篇(变成高手)
高级技巧:
1,GUI(图界):创建自定义接口.用Gui命令.可添加按钮,文本框,复选框,等等.让你的脚本更"美观",更容易使用.
2,COM(组件对象模型):可调用COM对象,实现更复杂的功能.比如,操作Excel,Word等.
3,DllCall:调用窗口接口,可实现更底层的控制,比如,取硬件信息,修改注册表等等.危险,小心使用!
4,正则式:使用正则式,串匹配和替换.
动态链接库(DLL):扩展AHK的功能,如,使用现成的DLL实现一些特殊的功能.
代码优化:
1,代码风格:保持代码风格一致,方便维护.
2,减少重复代码:使用函数,避免代码冗余.
3,提高效率:使用更快的命令,避免低效的循环.
4,调试技巧:使用MsgBox,或FileAppend,调试