User interface 在多个windows Tcl/Tk中共享小部件

User interface 在多个windows Tcl/Tk中共享小部件,user-interface,tcl,tk,User Interface,Tcl,Tk,假设我有一个标签小部件.x.somelabel。有没有办法在多个不同的窗口中插入此标签,以便在它们之间共享?我尝试将网格与-in选项一起使用,但它似乎在最后指定的小部件中插入了标签。否,您不能共享标签小部件本身 但您可以共享标签用于显示文本的变量 package require Tk set vars(statusmessage) "All is ok on the western front." toplevel .x ttk::label .x.somelabel -textva

假设我有一个
标签
小部件
.x.somelabel
。有没有办法在多个不同的窗口中插入此标签,以便在它们之间共享?我尝试将
网格
-in
选项一起使用,但它似乎在最后指定的小部件中插入了
标签。

否,您不能共享标签小部件本身

但您可以共享标签用于显示文本的变量

 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!}]

不,您不能共享标签小部件本身

但您可以共享标签用于显示文本的变量

 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!}]