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

时间:2011-11-08 14:30:34

标签: label tcl tk

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

label .main_frame.status_bar.status_label -textvariable _DB(status_text)

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

2 个答案:

答案 0 :(得分:5)

$label configure -fg $color

$label configure -foreground $color

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

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

答案 1 :(得分:5)

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

.main_frame.status_bar.status_label configure -foreground $new_colour