AutoHotkey 用了好几年了,但基本都在用 Basic 兼容语法, 最近为了写程序更方便想学学 L 里的面向对象编程的语法,于是发现某些AHK命令的 OutputVar 参数无法直接引用 Object 的属性。
比如 INIRead:
第一个参数是 OutputVar,当 OutputVar 是某个 Object 的属性时,就会出现错误:IniRead, OutputVar, Filename [, Section, Key, Default]
Code: Select all
config := {}
IniRead, config.color, test.ini, settings, color
Error at line 2.
The following variable name contains an illegal character:
"config.color"
The program will exit.
尝试过在 config.color 前加 % 以表示这是个表达式(INIWrite 用这个办法即可将 Object 的属性写到 INI 文件中),但还是报错:
Error at line 2.
Line Text: % config.color
Error: This parameter contains a variable name missing its ending percent sign.
The program will exit.
本以为只有 INIRead 是这样,后来发现好像所有帮助文件里名为 OutputVar 的参数都是如此。比如 RegRead, Random 等等
当然用个中间变量即可解决这种问题。
但是很麻烦不是嘛?
求问有无解决办法?