You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AutoHotkey中使用变量定义按键按下与抬起操作?

AutoHotkey v2 变量控制按键按下/抬起的正确写法

你的代码失效是因为没在Send命令里正确解析变量,AHK v2的字符串处理和Send语法和v1有差异,以下是两种可行写法:

写法1:字符串拼接

test(key){
    Send "{" key " down}"  ; 把变量直接拼接到按键指令字符串中
    Sleep 500
    Send "{" key " up}"
}
test("w")  ; 必须传带引号的字符串,直接写test(w)会把w当成未定义变量,肯定无效

写法2:变量插值

v2支持在双引号字符串里用%变量名%做插值,这种写法更直观:

test(key){
    Send "{%key% down}"
    Sleep 500
    Send "{%key% up}"
}
test("w")

额外注意

  • 用SendInput替代Send可以获得更稳定的按键模拟效果,用法完全一致
  • 你贴的官方文档示例InStr(MyVar, "fox")是正确的v2字符串查找语法,和当前按键控制的问题无关

内容的提问来源于stack exchange,提问作者kite

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 23:12:16