我想在检查目录中是否存在一些文件后更改单选按钮的颜色,但无法实现,因为不确定配置-background color
是否适用于单选按钮。
这是一个看起来像的示例代码
set topdir $path
ttk::checkbutton .top.d.z.$t -text $v -variable s -command [list select_lib $v $elem $g $t] $t]
-value $v.kill -padx 2 -pady 2
if {file exist $path/rc.log == 1} {
#change color to green in widget
} else {
# retain same background of radio button
}
请提出实现这一目标的任何方法。
好的,感谢RLE和Brad Lanam在wiki上对ttk风格的描述。
创建并定位单选按钮:
pack [ttk::radiobutton .b -text foo]
基于默认TRadiobutton
样式创建自定义样式,背景设置为绿色:
ttk::style configure greenstyle.TRadiobutton -background green
将此样式应用于单选按钮以将背景变为绿色:
.b configure -style greenstyle.TRadiobutton
恢复到正常背景色:
.b configure -style TRadiobutton
当在主题小部件上更改颜色等时,可以决定更改
- 默认样式(在本例中为
TRadiobutton
):这会影响相同类型的所有小部件 - 子样式,如本例中的(
greenstyle.TRadiobutton
) - 克隆的样式(有关示例,请参见此处)
- 一个临时构建的样式(遵循Windows上
C:Tcllibtk8.6ttk
目录中的示例):仅限专家
Brad Lanam编辑:
有关ttk::单选按钮颜色的更多信息
一些定义:
- 背景:所有事物背后的整体背景颜色
- 前景:单选按钮标签上文本的颜色
- 指示器颜色:指示器的颜色
可以使用ttk::style
命令设置这些选项:
ttk::style configure greenstyle.TRadiobutton -indicatorcolor lightgreen
ttk::style map greenstyle.TRadiobutton -indicatorcolor
[list selected darkgreen pressed white]
如上所述应用设置和重置。
文件:收拾ttk::单选按钮(小部件),Tk主题引擎介绍,更改小工具颜色(ttk::radiobutton)