for k, v in {font-weight : "bold"}
msgbox %k% : %v% ; : bold
for k, v in {"font-weight" : "bold"}
msgbox %k% : %v% ; font-weight : bold
当使用 - 符号时,这是一个bug还是作为表达式传递的字符串?该手册说双引号是可选的。
这是无效导致错误。所以现在它是有道理的。
font-value := "bold"
msgbox % font-value
结果:
行文字:font-value:=“bold”错误:此行不包含 公认的行动。
了解其他说明:
for k, v in {font*weight : "bold"}
msgbox %k% : %v% ; : bold
for k, v in {10*2 : "10*2"}
msgbox %k% : %v% ; 20 : 10*2
for k, v in { 0xeeeee : "0xeeeee"}
msgbox %k% : %v% ; 978670:
答案 0 :(得分:0)
与答案here类似,减号是保留的。使用任何其他运算符时,快捷方式也不起作用。它不是一个错误的原因是它允许在命名对象的键中使用数学,字符串操作,函数等。它可能是也可能不是设计缺陷,但它可以按照开发人员的意图运行。
来自the AutoHotkey_L documentation:
引号是键的可选 它只包含单词字符。任何表达式都可以用作 一个键,但要将变量用作键,必须将其括起来 括弧。例如,
{(KeyVar): Value}
和{GetKey(): Value}
都是有效的。
(强调补充)
单词字符通常表示字母,数字和下划线。