更改Tcl/Tk中现有标签的颜色

SIM*_*MEL 2 label tk-toolkit tcl

我有一个状态栏,它是一个连接到变量的标签:

label .main_frame.status_bar.status_label -textvariable _DB(status_text)
Run Code Online (Sandbox Code Playgroud)

我想在每次出现错误时更改文本的颜色,这意味着当状态栏显示错误时,文本应为红色,稍后显示正常状态时,应更改回黑色.如何-foreground"动态" 更改标签的属性?

kos*_*tix 7

$label configure -fg $color
Run Code Online (Sandbox Code Playgroud)

要么

$label configure -foreground $color
Run Code Online (Sandbox Code Playgroud)

$label configure在交互式愿望shell中运行,以查看可以更改的所有选项.

PS我应该补充一点,IMO这种错误报告方法存在缺陷.以这种方式显示非严重警告是可以的,但应该更积极地报告错误.


pat*_*yts 6

您可以通过调用小部件configure过程来实时重新配置任何Tk小部件属性.在这种情况下:

.main_frame.status_bar.status_label configure -foreground $new_colour
Run Code Online (Sandbox Code Playgroud)