Autohotkey {AHK}为脚本启动后创建的GUI按钮定义控件(/分配任务)
假设在运行脚本期间执行一些操作,您可以通过循环创建带有多个按钮的guiAutohotkey {AHK}为脚本启动后创建的GUI按钮定义控件(/分配任务),autohotkey,Autohotkey,假设在运行脚本期间执行一些操作,您可以通过循环创建带有多个按钮的gui Loop, 5 { Gui, Add, Button,, Number %A_Index%) } Gui, Show 按下其中一个按钮后,如何分配操作 在脚本启动后,您似乎无法执行此操作,还有一些技巧,如 ButtonNumber%A_Index%: ;even if i was doing it inside loop. do something here bla bla return 不工作 更糟糕的是,我
Loop, 5
{
Gui, Add, Button,, Number %A_Index%)
}
Gui, Show
按下其中一个按钮后,如何分配操作
在脚本启动后,您似乎无法执行此操作,还有一些技巧,如
ButtonNumber%A_Index%: ;even if i was doing it inside loop.
do something here bla bla
return
不工作
更糟糕的是,我想从一个文件的内容中创建这些按钮(这里是为了测试),比如说,每行文本都被用来命名一个按钮。
您可以在AHK帮助文件中找到类似的小项目。但是让我们坚持这个简单的模拟。
可能是:
存储和响应用户输入,第三个选项变量或g标签是anwser。但它要求静态/全局变量,但我在声明这些变量时遇到了麻烦。还有我不熟悉的g标签
我想到的另一个选择是——创建预定义的按钮(很多),将它们重命名为我的值(来自文件),然后放弃其余的。希望我能够使用预定义的控件
p.S
AHK帮助文件真是一团糟,作为一个初学者,我发现它很难找到完整且有意义的信息,相反,你必须在这里和那里搜索并咬一口。一种方法是对所有按钮使用一个解析循环和一个g标签,然后使用一个GUI控件获取调用子程序的按钮的变量名 示例:
; fileread, file_content, Path-to-file
file_content =
(
line with text one
line with text more
line with text other
line with text something
line with text two
)
Loop, parse, File_content, `n, `r
{
Gui, Add, Button, vMyButton%A_index% gButtons, %A_LoopField%
}
Gui, Show
return
Buttons:
msgbox % A_GuiControl
return
GuiClose:
ExitApp
希望能有所帮助我找到了一个解决我问题的方法。基本上,它包括blackholyman(lel)建议的g标签功能。 对所有我的按钮使用相同的g标签,并在按钮控件内进行控件比较。 由于我已将buton名称存储在一个文件中,在一行中包含与此按钮相关的其他数据,因此我可以通过解析将每一行与按钮名称(a_GuiControl)进行比较,这使我能够检索指定g标签内的相关数据。 也许有人会觉得它有用。我稍后再添加代码