AutoHotKey知识点整理.docx
- 文档编号:28657081
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:32
- 大小:34.33KB
AutoHotKey知识点整理.docx
《AutoHotKey知识点整理.docx》由会员分享,可在线阅读,更多相关《AutoHotKey知识点整理.docx(32页珍藏版)》请在冰豆网上搜索。
AutoHotKey知识点整理
AutoHotKey知识点整理
1、MsgBox命令有几种格式?
MsgBox,文本或MsgBox[,类型,标题,文本,显示时间]
2、MsgBox命令按钮有几种类型?
OK—0
OK/Cancel—1
Abort/Retry/Ignore—2
Yes/No/Cancel—3
Yes/No—4
Retry/Cancel—5
IconHand(stop/error)—16
IconQuestion—32
IconExclamation—48
IconAsterisk(info)—64
Make2ndbuttonthedefault—256
Make3rdbuttonthedefault—512
SystemModal(alwaysontop)—4096
TaskModal—8192这些参数允许相加而得到复合效果。
3、显示含有yes/no按钮并总在顶端的对话框?
msgbox,4100,标题,内容
4、MsgBox如何换行?
MsgBox,你好,欢迎关注静海安澜阁`n请继续关注
5、如何对MsgBox命令的选择结果进行处理?
IfMsgBox,ButtonName
ButtonName可选项:
YesNoOKCancelAbortIgnoreRetryTimeout
6、对话框显示时间,并以秒为单位?
msgbox,,标题,内容,5
7、运行外部可执行程序或者直接打开文件?
Run,目标文件[,工作目录,Max|Min|Hide|UseErrorLevel,输出PID变量]
8、如何运行记事本并以最大化状态显示?
Run,Notepad.exe,,Max
9、如何直接打开文件?
Run,MyFile.txt
10、命令行解释器cmd.exe用那个宏来表示?
%ComSpec%/k在执行完命令后保留命令提示窗口,而/c则在执行完命令之后关闭提示窗口
11、命令“dirc:
\Windows\system32”如何实现?
Run,%ComSpec%/kdirc:
\Windows\system32
12、如何打开网页?
Run,
13、如何打开系统属性窗口?
Runcontrolsysdm.cpl需要的话可以搜索所有的*.cpl文件
14、打开控制面板?
run,control
15、如何打开搜索窗口且指定搜索位置?
Run,findC:
\
16、如何显示指定文件的属性窗口?
Run,propertiesMyFile.txt注意:
AHK在退出前将自动关闭打开的属性窗口!
17、如何打印指定文件?
Run,printMyFile.txt
18、等待窗口出现、被激活、被关闭用那些命令?
WinWait/WinWaitActive/WinWaitClose
19、如何使目标窗口出现之前不执行后面语句?
WinWait[,窗口标题,窗口文本,超时时间,排除标题,排除文本]
20、如何使目标窗口成为活动窗口?
WinActivate[,窗口标题,窗口文本,排除标题,排除文本]
21、关闭窗口有几种方式?
正常关闭窗口(WinClose),强行关闭窗口(WinKill):
WinClose/WinKill[,窗口标题,窗口文本,超时时间,排除标题,排除文本]
22、同名窗口使我们无法用窗口标题准确标识窗口,如何使用窗口ID来准确定位窗口?
使用获得窗口句柄的命令WinGet
WinGet[,输出变量,CMD,窗口标题,窗口文本,排除标题,排除文本]
23、如何用窗口ID来替代窗口标题?
ahk_pid%ThisPID%
24、那个命令把鼠标点击事件发送到目标窗口的目标控件上?
ControlClick[,目标控件或坐标位置,窗口标题,窗口文本,鼠标按钮,点击次数,选项,排除标题,排除文本]
25、ControlClick命令中,目标控件参数主要是什么?
目标控件参数是指要点击的控件的类别名(ClassNN)或控件文本,还可以使用控件句柄(若用的是控件句柄则第一个参数需留空,
并在第二个参数中使用ahk_id%控件句柄%)。
26、如何获得目标控件信息?
先打开你要进行操作的目标窗口,然后运行AutoIt3WindowSpy,把鼠标移到目标控件上
27、鼠标单击系统属性确定按钮代码是?
ControlClick,确定,系统属性
ControlClick,Button2,系统属性
28、目标窗口或控件是隐藏状态,ControlClick还可以点击目标控件吗?
可以点击目标控件,但不能保证成功率。
29、如何设置控件文本?
ControlSetText[,目标控件,新文本,窗口标题,窗口文本,排除标题,排除文本]
例如:
ControlSetText,Edit1,D:
\foobar2000,Setupfoobar
30、如何选中和取消单选框和复选框项目中的选择项目?
Control[,命令,值,目标控件,窗口标题,窗口文本,排除标题,排除文本]
其中,“命令”就是让我们指定要进行何种设置的参数。
对这些单选框/复选框按钮来说,适用的命令是“Check”和“UnCheck”。
例如:
Control,Check,,Button5,foobar
Control,UnCheck,,Button7,foobar
31、如何选择下拉列表的项目?
仍是使用Control命令,适用的命令是“Choose,N”和“ChooseString,String”,分别表示选中第N个项目和选中与字符串String
匹配的项目;例如:
Control,Choose,5,ComboBox1,Installer
Control,ChooseString,简体中文,ComboBox1,Installer
32、键盘如何重定义?
a:
:
b
33、字符串如何进行自动替换?
:
:
is:
:
islandofresistance或者
:
:
china:
:
Clipboard=中华人民共和国
send,^V
Return
34、屏蔽或开启键盘、鼠标?
BlockInput命令后,紧跟on,则屏蔽键盘鼠标操作,紧跟off,则重新启用用户输入。
如何仅仅屏蔽鼠标?
如何恢复?
BlockInput,MouseMove恢复为:
BlockInput,MouseMoveOff
35、如何建立一个弹出式窗口例示文本?
如何关闭?
SplashTextOn[,宽度,高度,标题,文本]
`n可以在MsgBox和SplashTextOn等命令中对显示的文本进行换行。
SplashTextOff为关闭SplashTextOn命令建立的弹出式窗口。
36、如何将一系列指令重复执行指定次数?
Loop[,Count]
{
循环体……
}
37、Loop中的count允许是表达式或者变量吗?
Count不允许是表达式,但允许是一个变量。
如何知道loop现在循环到第几次?
loop指令隐含有一个变量A_Index,用来记录当前状态是第几次循环
38、如何中断循环?
ifa_index>25
break;中断循环
39、如何跳过本次循环?
ifa_index<20
continue;跳过本次循环,开始一次新的循环
40、如何使使脚本等待指定时间?
Sleep,时间单位为毫秒
41、如进行数学运算,使用什么符来把表达式运算的结果赋予某变量?
使用冒号等号符。
如:
NetPrice:
=Price*(1-Discount/100)
42、i:
=i+1的简化写法是什么?
i+=1
43、如何获取指定区间的随机数?
Random,输出变量[,最小值,最大值]
44、如何从指定文本中读取指定行?
FileReadLine,输出变量,文件名,行数
45、如何判断文本超出边界?
ErrorLevel是命令内置的一个变量,当读取文件超出边界时将被赋值为1.
46、ErrorLevel为0和1时一般代表什么?
一般情况下,为0代表操作成功,为1,代表操作失败。
47、一般情况下,编写弹出式菜单代码的顺序是什么?
1、先定义子菜单项;2、编写菜单项;3、编写令菜单显示的代码;4、编写删除代码;5、编写响应代码。
48、如何添加子菜单?
Menu,add,子菜单项,:
子菜单变量如:
menu,mymenu,add,常用程序,:
amenu
49、用来在弹出式菜单中显示一条分割线的代码是?
Menu,MenuName,add
50、正常菜单项的代码是?
Menu,MenuName,add,菜单项,响应标志
51、响应代码的格式是?
响应标志:
响应代码……
return
52、形如:
Menu,amenu,add,txt的代码是什么意思?
它其实是Menu,amenu,add,txt,txt的一种简写,代表菜单项和响应标志
53、在指定坐标处显示菜单项的代码是?
Menu,MenuName,show,X坐标,Y坐标如省略坐标,则在鼠标当前位置显示菜单项。
54、如何指定显示菜单的背景色?
Menu,MenuName,color,颜色代码
55、删除所有菜单的代码是什么?
有什么作用?
Menu,mymenu,deleteall
如果没有这句代码,代码中分割线会在菜单重显时翻倍。
如无分割线,可免
56、重启、关闭、注销系统的指令是什么?
Shutdown后跟0为注销1为关机,2为重启,4为强制关闭8为关闭关闭电源
57、隐藏脚本图标有几种方法?
Menu,tray,noicon或者#NoTrayIcon
58、显示脚本图标的代码?
Menu,tray,icon
59、脚本图标的气泡提示如何显示?
Menu,tray,tip,我自己的脚本
60、如何设置脚本的图标?
Menu,tray,icon,%systemroot%\system32\shell32.dll,22或者Menu,tray,icon,e:
\ico\1.ico
61、如何利用快捷键退出脚本?
#x:
:
ExitApp
62、如何移除托盘图标的所有标准菜单项?
Menu,tray,NoStandard
63、如何插入托盘图标菜单?
Menu,tray,add,myitem
64、如何显示托盘图标的标准菜单项?
Menu,tray,standard
65、在托盘图标显示一个二级菜单代码如何表示?
menu,mymenu,add,boke
menu,mymenu,add,luntan
menu,tray,add,相关网站,:
mymenu
Return注意:
响应标志后是:
不是:
:
66、如何使非热键类的脚本持久运行?
#Persistent
67、显示一个标准的文件选择对话框的代码为?
FileSelectFile,OutputVar[,Options,RootDir,Prompt,Filter]
Option参数如被省略,则为单选。
M多选,M后允许随意跟随一个数字。
S:
显示保存对话框。
数字为一般为3,即文件及路径必须存在。
Filter参数格式如:
Example:
Audio(*.wav;*.mp2;*.mp3)
68、FileSelectFile命令如用户选择了多个文件,输出变量如何分割?
输出变量用(`n)字符分割。
第一个参数为路径,随后紧跟选定的各个文件名。
iffiles=
{
MsgBox,用户放弃选择。
}
Loop,parse,files,`n
{
ifa_index=1
mypath=%A_LoopField%
else
{
runwait,%mypath%\%A_LoopField%
}
}
return
69、运行并等待程序完成的指令是?
runwait
70、从某字符串中逐次分解出一个个的子串。
Loop,Parse,某字符串,用于分割的特征变量
71、用对话框显示音量递增10%?
MsgBox,音量递增10`%
72、使静音或者取消静音状态?
SoundSet,+1,,mute或者Send,{Volume_Mute}
73、使主音量提升(降低)10%?
SoundSet,+(-)10,MASTER
74、使音量中波形音量提升(降低)10%?
SoundSet,+(-)10,WAVE
75、#NoEnv作用是什么?
主要是为了与以后兼容,也可以改善性能
76、如何对某些多媒体功能键重定义?
建个脚本内容为#InstallKeybdHook并执行,双击图标,窗口中选择菜单view第四项key开头的然后按多媒体键,f5刷新,看第二列内容比如a,显示的值是01e。
使用时就是sc01e:
:
msgbox
77、显示器的宽度和高度用那两个常数表示?
A_ScreenWidth和A_ScreenHeight
78、如何移动鼠标光标?
MouseMove,X,Y[,Speed,R]Speed参数的范围在0(最快)to100(最慢)之间取值.
R参数如果有此参数,则鼠标移动将以当前位置为基准,进行x和y像素的位移.
79、如何获取当前鼠标坐标?
MouseGetPos,X,Y
80、MouseGetPos还有什么作用?
MouseGetPos指令用来返回鼠标的当前位置,以及鼠标当前悬停的窗口和控件。
格式为:
MouseGetPos,[OutputVarX,OutputVarY,OutputVarWin,OutputVarControl
OutputVarWin这个变量存储了当前鼠标悬停的窗口的ID,即使窗口未处于激活状态。
OutputVarControl这个变量存储了当前鼠标悬停的控件的名称(ClassNN)。
81、MouseGetPos命令在最后有1、2、3参数是什么意思?
1:
在多文档界面程序(例如SysEdit或TextPadThis)中可以准确的获取激活或置顶的子窗口信息。
对其它情况就不那么准确了。
2:
在OutputVarControl中存储control'sHWND/窗口句柄。
3:
同时包含1和2的功能。
82、如何在屏幕上建立一个紧随鼠标的弹出式窗口?
ToolTip[,Text,X,Y]
83、如何获得当前位置像素的颜色RGB的值?
PixelGetColor,OutputVar,X,Y[,RGB]
84、如何在系统托盘建立一个弹出式窗口?
TrayTip[,Title,Text,Seconds,Options]注意senconds的取值一般在10到30之间
85、如何用指定时间间隔自动或重复激发某子程序?
SetTimer,Label,时间间隔
86、关闭某进程的代码是?
Process,close,autohotkey.exe
87、如何检索鼠标所在位置的信息?
MouseGetPos,,,id,control;得到鼠标所在位置窗口的id及控件名称
WinGetTitle,title,ahk_id%id%;检索到相应id对应窗口的标题
WinGetClass,class,ahk_id%id%;检索到相应id对应窗口的类名
88、如何得到当天的日期?
dd=%A_YYYY%年%A_MM%月%A_DD%日
89、如何给剪贴板赋值?
clipboard=%var%
90、当前桌面那个常数表示?
%A_Desktop%
91、如何设置鼠标速度?
SetDefaultMouseSpeed30;默认的是2,可以从0调到100,越小越快
92、如何设置鼠标动作结束之后的延迟?
SetMouseDelay30;默认是10毫秒
93、如何实现ctrl+鼠标双击?
send^{click100,2002}
94、使滚轮向上滚2次?
clickwheelup2;wheelup可以写成WU
95、滚轮向下滚一次?
clickwheeldown;wheeldown可以简化为WD
96、使鼠标滚轮向下滚5次有几种方法?
Click,WD,5或
loop5
clickWD
97、当前位置鼠标单击左键
click;
right右键,left左键(默认可省略),middle中键
98、当前位置鼠标双击左键?
click2
99、移动鼠标到30,40?
click30,40,0
100、点击鼠标右键的代码如何编写?
Click,100,200,right
101、如果鼠标点击的坐标是动态的如何表达?
Click%x%%y%
102、拖动某图标?
click30,40down
click50,60up
103、如何设置一个进度条?
Progress,%i%,进度条下文本,进度条上文本,标题
104、如何创建快捷方式?
FileCreateShortcut,目标文件,快捷方式名[,工作目录,用空格分开的参数,描述,图标,快捷键,图标标号,运行状态]
注意:
只需指定单个按键,所有的快捷键被指定为CTRL+ALT+快捷键,如果给该参数指定B,将会产生一个CTRL-ALT-B的快捷键。
运行状态1-正常(默认)3-最大化7-最小化
105、空格键
{space}
106、向左的箭头
{Left}
107、ctrl键?
^
108、alt键?
!
109、回车?
{enter}
110、小键盘的1?
Numpad1
111、Windows键?
#
112、Shift键?
+
113、逻辑与,把多个按键或鼠标组合成一个自定义键?
&
114、一对按键中的左边的按键?
<如
116、通配符,表示热键被按下时,即使同时还有其他的按键按下,依然有效?
*
117、热键被触发后,动作不会被阻塞?
~
118、禁用某键?
在:
:
后紧跟return即可。
如:
RWin:
:
return
119、按键重映射?
a:
:
b如:
RAlt:
:
Rbutton右alt映射为鼠标右键Lbutton:
:
return鼠标左键被屏蔽
120、仅在notepad中交换a、b键?
#IfWinActiveahk_classNotepad
a:
:
b;
#IfWinActive;
121、鼠标定义?
LButtonRButtonMButtonWheelDownWheelUp
122、键盘定义?
SpaceTabEnter(orReturn)Escape(orEsc)Backspace(orBS)Delete(orDel)Insert(orIns)HomeEndPgUpPgDnUpDownLeftRightScrollLockCapsLockNumLockNumlockONNumlockOFFNumpad0NumpadPgUpNumpadDot(.)NumpadDelNumpadDiv(/)NumpadDiv(/)NumpadMult(*)NumpadMult(*)NumpadAdd(+)NumpadAdd(+)NumpadSub(-)NumpadSub(-)NumpadEnterNumpadEnter1aALWinControl(orCtrl)AltShiftF1PrintScreenCtrlBreakPauseBreak
123、注释
;跟在需注释的语句之后,注意语句和分号之间至少要有一个空格。
如果要注释多个语句可以使用/**/
124、函数?
Add(x,y)
{
returnx+y;"Return"expectsanexpression.
}
函数调用时,变量的后面使用:
=例如:
Var:
=Add(2,3);
由于一个函数调用就是一个表达式,所以函数的参数列表里面的变量前面不能加百分号“%”,相反的,字符串要使用引号。
当一个命令的参数调用函数的时候,如果命令的参数不支持表达式,就必须使用百分号“%”,如:
MsgBox%"Theansweris:
"Add(3,2)
125、如果要想在热字符串替换后加上空格?
在语句的后边加上`,:
*:
btw:
:
Bytheway`
126、弹出光驱
Drive,Eject,,0
127、收回光驱
Drive,Eject,,1
128、使窗口透明,值在1-255之间?
WinSet,Transparent,100,我的电脑
129、创建或更新启动界面?
SplashImage,d:
\1.jpg,bfs18
Sleep,5000
bfs18可以去除界面边框。
原因不明
130、修改脚本之后,按住左键后按R重新载入脚本
~LButton&r:
:
reload
return
131、打开/激活记事本
IfWinExist无标题-记事本
{
WinActivate
}
Else
{
RunNotepad
WinWait无标题-记事本
WinActivate
}
132、隐藏任务栏WinHideahk_classShell_TrayWnd
显示任务栏WinShowahk_classShell_TrayWnd
133、如何强制单线程?
#SingleInstanceforce
134、屏蔽Ctrl+Alt+Del?
Regwrite,REG_SZ,HKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\WindowsNT\CurrentVersion\ImageFileExecutionOptions\taskmgr.exe,Debugger,HotkeyDisabled
解除屏蔽RegDelete,HKLM,SOFTWARE\Microsoft\W
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AutoHotKey 知识点 整理