访问关联数组/对象中的值的问题

Problems with accessing values in associate arrays / objects

我有一个基本如下的文件:

global t = {"0x00FF14": 123} 

manageModifierStates(color) {
    test := t[color]
    Tooltip, %test% | %color%, 11, 11
}

~\::
    PixelGetColor, pixelColor, 10, 10, RGB
    manageModifierStates(pixelColor)
Return

我按下 \ 键的结果是我得到一个工具提示,其中管道的左侧没有任何内容,但在右侧显示 0x00FF14。我在访问对象 属性 时做错了什么?我 want/expect 工具提示导致 123 | 0x00FF14

感谢您提供的任何见解

我不能告诉你技术答案的细节,但这是数据类型的问题(数字 vs 字符串)。

由于某些原因,与变量在 ahk 的其余部分表现出的灵活性相比,对象的声明有时过于严格。

现在开始讨论您的问题,语法 0x... 在 ahk 中不需要引号。它被识别为一个数字,准确地说是一个十六进制数。所以你可以安全地删除你放在它周围的引号。此外,这是解决问题的一种方法。

另一种方法是,在声明之后,您只需执行以下解决方法:

global t = {"0x00FF14": 123}
for k,v in t
    t[k] := v