AutoHotkey新手教程
![]() AutoHotkey是一个基于Windows平台的开放源代码的热键脚本语言,这个脚本语言可以实现键盘和鼠标的自动按键和自动点击功能,通过发送键盘或鼠标的键击动作命令来实现几乎所有操作的自动化,可以简化很多重复性操作工作。 实现一个AHK脚本非常简单,先下载安装AutoHotkey,然后编辑一个文本文件,里面是相关脚本,将文件后缀修改为.ahk结尾,双击此文件即可运行,在任务栏通知区域会出现新的图标,要退出此脚本, 则在任务栏通知区域的绿色 "H" 图标上点击右键即可。 注释 在行首使用分号可以注释当前行脚本。例如:
也可以在命令的末尾添加注释,此时分号左侧必须至少有一个空格或tab。例如:
此外,可以使用 /* 和 */ 符号注释整块代码,但仅当它们出现在行首时才有效。 标签 定义标签使用一个冒号结尾,语句块(代码段)以 return 结束, 使用 goto, gosub等调用。
函数 函数类似于子程序 (Gosub),不过它可以从调用者那里接受参数 (输入),同时,函数还可以返回值给其调用者。
默认情况下,在函数中创建或访问的所有变量都是局部的。每个局部变量的内容只在它所在的函数中可见。因此,一个局部变量可以和一个全局变量有相同的名称却有着不同的内容。最后,所有的局部变量在每次调用函数时都以空值开始。 函数代码块以 { 开始并以 } 结束。 热键 热键有时也称为快捷键,能简便地触发动作,定义热键使用两个冒号结尾,以 return。 #n::Run Notepadreturn 在定义热键时可以使用下列修饰符:
按键、鼠标按钮和操纵杆控制器的列表
常用命令 SetTimer [, Label, Period|On|Off, Priority] 以指定的时间间隔自动并重复运行子程序。 标签 跳转的目标 标签 或 热键标签 的名称, 这样会执行 Label 下的命令, 直到遇到 Return 或 Exit Period|On|Off On: 以原来的 周期 重新启用之前禁用的计时器。如果计时器不存在,则进行创建 (使用默认的周期 250)。 Off: 禁用现有的计时器。 Priority 表示计时器的优先级。如果省略,则使用 0。 Sleep DelayInMilliseconds 在继续前等待指定的时间量。参数是要暂停的时间量 (单位为毫秒)。 Send Keys 发送模拟键击和鼠标点击到活动窗口。参数是要发送的按键序列。 Send Keys down 按住指定按键。 Send Keys up 释放指定按键。 Click 在鼠标光标的当前位置点击一次鼠标左键。 Click right 在鼠标光标的当前位置点击一次鼠标右键。 Click down 按下鼠标左键不放。 Click up 释放鼠标左键。 Click down right 按下鼠标右键不放。 Click up right 释放鼠标右键。 PixelGetColor, OutputVar, X, Y [, Alt|Slow|RGB] 获取指定的 x, y 坐标处像素的颜色。 Run, Target [, WorkingDir, Max|Min|Hide|UseErrorLevel, OutputVarPID] 运行外部程序。与 Run 不同,RunWait 会等待程序结束才继续往后执行。 Run NotepadRun C:/My Documents/Address List.docRun C:/My Documents/My Shortcut.lnkRun www.williamlong.infoRun mailto:someone@somedomain.com 参数是要运行的文档,URL,可执行文件 (.exe, .com, .bat, 等等),快捷方式 (.lnk) 或系统动词。 要让脚本等到程序或文档关闭后才继续执行,请使用 RunWait 代替 Run。在下面的例子中,一直到用户关闭记事本后 MsgBox 命令才会继续执行。 RunWait NotepadMsgBox The user has finished (Notepad has been closed). WinWaitActive [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText] 等到指定的窗口处于活动状态。 Run, notepad.exeWinWaitActive, Untitled - Notepad, , 2if ErrorLevel{ MsgBox, WinWait timed out. return}else WinMinimize ; 最小化 WinWaitActive 找到的窗口. WinWaitNotActive [, WinTitle, WinText, Seconds, ExcludeTitle, ExcludeText] 等到指定的窗口处于不活动状态。 (编辑:52站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |