在多个 windows Tcl/Tk 中共享一个小部件
Share a widget in multiple windows Tcl/Tk
假设我有一个 label
小部件 .x.somelabel
。有没有办法在多个不同的 windows 中插入这个标签,以便它们之间共享?我尝试将 grid
与 -in
选项一起使用,但看起来它在最后指定的小部件中插入了 label
。
不,您不能共享标签小部件本身。
但是您可以共享标签用来显示文本的变量。
package require Tk
set vars(statusmessage) "All is ok on the western front."
toplevel .x
ttk::label .x.somelabel -textvariable vars(statusmessage)
pack .x.somelabel
toplevel .y
ttk::label .y.msglabel -textvariable vars(statusmessage)
pack .y.msglabel
# Change the variable after one second
after 1000 [list set vars(statusmessage) {Error!}]
假设我有一个 label
小部件 .x.somelabel
。有没有办法在多个不同的 windows 中插入这个标签,以便它们之间共享?我尝试将 grid
与 -in
选项一起使用,但看起来它在最后指定的小部件中插入了 label
。
不,您不能共享标签小部件本身。
但是您可以共享标签用来显示文本的变量。
package require Tk
set vars(statusmessage) "All is ok on the western front."
toplevel .x
ttk::label .x.somelabel -textvariable vars(statusmessage)
pack .x.somelabel
toplevel .y
ttk::label .y.msglabel -textvariable vars(statusmessage)
pack .y.msglabel
# Change the variable after one second
after 1000 [list set vars(statusmessage) {Error!}]