Autohotkey入门教程(1)HelloWorld与热键

一,前言

网上Autohotkey完整教程实在太少,许多新手不得不对着帮助文档学习。但是帮助文档只是很多命令的一种归类,跳跃性较大,初学者还是需要循序渐进地学习。为此,准备自己写部教程,抛砖引玉,希望能帮助各位编程爱好者。
关于软件安装,编辑器选择,代码运行等基本操作这里略去,直接进入编程正题。

二,你好世界

代码如下

Msgbox, HelloWorld

运行结果如下
在这里插入图片描述
这里MsgBox命令的作用是在小窗口中显示指定文本。

三,快捷键和热字符串

正如Autohotkey的字面意思,它是一个很强大的自动化热键软件,即用某些按键或者字符串触发另外一些指令。

1,热键(快捷键)

^j::
   Send, My First Script
Return

^指Ctrl键;^j指按下Ctrl+j键;::用来分割热键触发的功能;这里第二行Send指令即为Ctrl+j触发的功能;Send命令用来发送按键序列,这里发送了一行文本“My First Script”;Return表示热键代码块结束,如果代码只有一行则可以省略。
在空白记事本上按下Ctrl+j,结果如下图
在这里插入图片描述
与^表示Ctrl类似,键盘上很多特殊键都用特殊符号表示,常用热键修饰符如下表所示,具体可查帮助文档,但是需要注意,这些按键必须组合其他键(不用&组合的情况)才能用其特殊符号表示。如下例,热键并不是Ctrl而是^。

^::
   Send, My First Script
Return
符号说明
#Widows键
!Alt键
^Ctrl键
+Shift键
<成对按键中左边的那个,如<!为键盘左边的Alt键
>成对按键中左边的那个,如>!为键盘右边的Alt键

当单独使用某个特殊按键时,特殊修饰符如下表

符号说明
LWin左边Widows键
RWin右边Windows键
Control(或Ctrl)Ctrl键
LControl(或LCtrl)左边Ctrl键
RControl(或RCtrl)右边Ctrl键
AltAlt键
LAlt左边Alt键
RAlt右边Alt键
ShiftShift键
RShift右边Shift键
LShift左边Shift键
Space空格键
TabTab键
Enter(或Return)回车键
Escape(或Esc)Esc键
Backspace(或BS)退格键
F1功能键,其它功能键类似
Numpad0小键盘0,其它小键盘数字类似

组合热键可以通过&连接两个按键定义,如下例子,同时按下小键盘0和1触发功能。

Numpad0 & Numpad1::
	MsgBox You pressed Numpad1 while holding down Numpad0.
Return

2,热字符串
即用一串字符实现其他功能,范例如下

::ftw::Free the whales

热字符串需要用两个::将字符串ftw夹在中间。当你在键盘上输入ftw,再按下终止符号后,ftw将转换成Free the whales。终止符可以是回车、空格、Tab等。
如果想不输入终止符直接触发按键效果,可以采用如下语法

:*:ftw::Free the whales

3,Send命令
这里简单介绍Send命令。Send命令主要用来发送按键到特定程序。
和热键类似,Send指令也有一些特殊按键,但是注意不要混淆,大部分特殊按键和热键类似,仅仅需要用大括号包住。部分如下

符号说明
#Widows键
!Alt键
^Ctrl键
+Shift键

如Send !a为发送Alt+a,Send !+a为发送Alt+Shift+a。如果需要发送!需要用大括号括住,如Send {!}a为发送!a。注意,特殊按键除了上表也可以采用大括号形式,如{Alt}、{Shift}、{Ctrl}等。
想要表示按住或松开某个按键, 可以将这个键用花括号围起来, 同时加上单词UP或DOWN。

Send, ^s                     ; 都表示发送 CTRL+s 键击
Send, {ctrl down}s{ctrl up}  ; 都表示发送 CTRL+s 键击
Send, {ctrl down}c{ctrl up}
Send, {b down}{b up}
Send, {Tab down}{Tab up}
Send, {Up down}  ; 按下向上键
Sleep, 1000      ; 保持1秒
Send, {Up up}    ; 然后松开向上键

AltTab和ShiftAltTab是两个特殊的命令, 它们仅在与热键在同一行时才能被识别。

LAlt & j::AltTab
LAlt & k::ShiftAltTab

4,Run命令
该命令用执行程序或者打开网站。如下例

Run, https://autohotkey.com
Run, C:\Some_Program\Program.exe

某些程序并不需要完整路径, 如 Windows 标准程序

Run, notepad.exe
Run, msPaint.exe

5,注释
最后简单提一下Autohotkey的注释功能。注释有两种方式
(1)使用分号来注释脚本

Run Notepad  ;这是和命令在同一行的注释

(2)使用/*和*/符号注释整块代码

/*
MsgBox, 这行被注释掉了
MsgBox, 这行也被注释掉了 
*/

6,几个例子

::/mail::gmail@gmail.com

输入/mail并按下回车会自动转换成“gmail@gmail.com”

::/gs::
clipboard = 煎蛋娱乐有限公司 ; clipboard指剪切板,将汉字赋给剪切板
Send ^v
return

输入/gs并按下回车会自动转换成“煎蛋娱乐有限公司”

::/dd::
d = %A_YYYY%-%A_MM%-%A_DD% ;获得系统时间比如今天的时间:2018-12-21
clipboard = %d%
Send ^v
return

输入/dd并按下回车会自动转换成今天的日期,如“2018-12-21”

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值