我如何通过-textvariable更新标签



我已经输入了这样的脚本:

set cmakeBinName "noname"
proc Get_CMakeBin { } {
    set cmakeBinName [ tk_getOpenFile -initialdir / ]
}
label .l  -text { CMake bin: }
label .lb -width 24 -textvariable $cmakeBinName
button .cmb -text "..." -command Get_CMakeBin
grid .l .lb .cmb

但是标签中的文本在对话结束后不会改变。我该如何改进脚本?

过程中的变量是局部的,除非显式另有说明。试试这个:

proc Get_CMakeBin { } {
    global cmakeBinName
    set cmakeBinName [ tk_getOpenFile -initialdir / ]
}
您还应该注意,-textvariable选项接受一个变量名称,而不是内容。你应该这样写:
label .lb -width 24 -textvariable cmakeBinName

相关内容

  • 没有找到相关文章

最新更新