【问题标题】:How do I send the value of an array variable in Autohotkey?如何在 Autohotkey 中发送数组变量的值?
【发布时间】:2017-08-11 14:15:36
【问题描述】:

我正在编写一个需要显示数组变量值的 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'

我发现 posts on the AHK forums 声称我可以使用 send %MyArray1%send % MyArray %1%,但两个命令都只引用空变量。

如何在 AutoHotkey 脚本中发送数组的值?

【问题讨论】:

    标签: arrays autohotkey


    【解决方案1】:

    使用单个 % 来强制单个参数的表达式模式。

    MyArray := ["one", "two", "three"]  ; initialize array
    Send, % MyArray[1]                  ; send "one"
    

    这可以与使用引号""的常规文本结合

    Send, % "The first value in my array is " MyArray[1]
    

    表达式模式可用于任何命令,包括MsgBoxTrayTip

    MsgBox, % MyArray[1]
    Traytip, , % "The first value is " MyArray[1]
    

    另见

    【讨论】:

    • 你怎么能同时问这个问题并回答它?
    • @Davesexcel 我在提交问题时使用了“回答您自己的问题”复选框。
    • 我正在评论两者是如何在 2017 年 8 月 11 日 @ 14:15 完全相同的时间完成的
    • @Davesexcel 提问时会出现复选框。它可以让您同时发布问题和答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-06
    • 1970-01-01
    • 2021-11-08
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    相关资源
    最近更新 更多