作者zi98btcc (幼斤)
看板EzHotKey
标题[AHK-] Hotkey这指令用途?
时间Sun May 9 19:31:32 2021
Hotkey这指令如何使用?
https://www.autohotkey.com/docs/commands/Hotkey.htm
当中有个范例如下,#1: Creates a Ctrl-Alt-Z hotkey.
Hotkey, ^!z, MyLabel
return
MyLabel:
MsgBox You pressed %A_ThisHotkey%.
return
然後呢?接下来我按Ctrl+Alt+z 没有任何反应?
与下列有何不同?
^!z::MsgBox You pressed %A_ThisHotkey%.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.58.108.63 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/EzHotKey/M.1620559897.A.45E.html
1F:推 bhbbbbb: 用Hotkey 能传入变数,或是控制在某个时间点才开始让”^ 05/09 20:12
2F:→ bhbbbbb: !z”这个hotkey 作用或disable等等 05/09 20:12
3F:→ zi98btcc: 按了 ^!z没反应,如何让它有作用?不是应该跑出MsgBox? 05/09 22:13
4F:→ edwin96017: 范例应该是 先输入"1"启动C-A-Z 然後在输入"^!z"跳出 05/10 01:21
5F:推 edwin96017: 阿不对...跟1没关系. 05/10 01:33
6F:→ edwin96017: 刚刚是一下是效果跟单排的一样 写法不一样而已 05/10 01:44
7F:→ zi98btcc: 请问缺少什麽条件?我按了 ^!z 没反应,还是有其它用途? 05/10 12:53
8F:→ bhbbbbb: 我猜你并没有执行到hotkey那行,建议你贴完整的程式码 05/10 17:07
可以了,又是老问题,原来放到最後面,它就不执行,如下:
^f1::.......
^f2::.......
Hotkey, ^!z, MyLabel
return
MyLabel:
MsgBox You pressed %A_ThisHotkey%.
return
但是若改放到最上面就可以了,
Hotkey, ^!z, MyLabel
return
MyLabel:
MsgBox You pressed %A_ThisHotkey%.
return
^f1::.......
^f2::.......
之前碰过不少类似问题。
※ 编辑: zi98btcc (61.58.108.63 台湾), 05/10/2021 18:41:47
9F:推 Sylph: 在脚本运行时创建, 修改, 啓用或禁用热键 05/10 20:55
10F:→ bhbbbbb: 程式是从第一行开使执行的,但^f1::这行,程式会理解成, 05/11 00:18
11F:→ bhbbbbb: 当收到^f1这个事件後,执行此行开始直至return(inline写 05/11 00:18
12F:→ bhbbbbb: 法的话,可以想像他自动理解成在这行return),所以在还 05/11 00:18
13F:→ bhbbbbb: 没执行到Hotkey那行之前,就会停下来等待你的输入事件 05/11 00:18
14F:推 LPH66: 更详细说就是, AHK 的热键标记就只是一个 label 05/18 20:19
15F:→ LPH66: 只是热键标记还有一个作用是开启时执行的程式码会到此结束 05/18 20:22
16F:→ LPH66: 因此放在热键标记之後的程式码其实就是当成该热键的 05/18 20:23
17F:→ LPH66: 只是因为 return 的关系变成 dead code 而已 05/18 20:24