我正在开发基于Linux的GUI工具。
我有下面的代码。 (tcl脚本)
proc Kuser {} {
echo "AAA"
}
proc getxy_of_mouse_pointer {} {
gui_mouse_tool -window Layout.1 -start POINT_DEFINITION_TOOL
bind . <Button-1> [kuser]
echo "Hello"
}
“gui_mosue_tool”是该工具的内置过程。
在工具中执行如下所示的proc时,
“Hello”立即输出,无需等待 Button-1
工具 > getxy_of_mouse_pointer
AAA
你好
我想在单击鼠标右键时运行 Kuser-proc
我认为bind~部分需要修改。
但我不知道该怎么办。
绑定、事件、添加等...
[Kuser]
的 bind
参数是一个脚本替换 - 它表示:“运行此脚本并用脚本的结果替换 [...]
”。因此,在解析 bind
命令的参数后,运行的绑定命令是:
bind . <Button-1> {}
(假设
echo
命令不返回任何内容,因此 Kuser
)。
您想要为
bind
命令提供事件发生时要运行的命令的 name,而不是运行该命令的结果:
bind . <Button-1> Kuser