我正在编写一个需要显示数组变量值的 AutoHotkey 脚本,但它似乎无法正常工作。
MyArray := ["one", "two", "three"]
send MyArray[1] ; "MyArray[1]"
send MyArray%1% ; "MyArray"
send %MyArray1% ; <empty>
send % MyArray%1% ; <empty>
;send %MyArray%1% ; 'Error: Variable name missing its ending percent sign'
;send %MyArray%1%% ; 'Error: Empty variable reference (%%)'
;send %MyArray[1]% ; 'Error: Variable name contains an illegal character'
Run Code Online (Sandbox Code Playgroud)
我在 AHK 论坛上发现声称我可以使用send %MyArray1%or 的帖子send % MyArray %1%,但两个命令都只引用空变量。
如何在 AutoHotkey 脚本中发送数组的值?
%对单个参数使用 single来强制表达模式。
MyArray := ["one", "two", "three"] ; initialize array
Send, % MyArray[1] ; send "one"
Run Code Online (Sandbox Code Playgroud)
这可以与使用引号的常规文本结合 ""
Send, % "The first value in my array is " MyArray[1]
Run Code Online (Sandbox Code Playgroud)
表达式模式可用于任何命令,包括MsgBox和TrayTip。
MsgBox, % MyArray[1]
Traytip, , % "The first value is " MyArray[1]
Run Code Online (Sandbox Code Playgroud)
另见: