tk_setPalette(3tk)

NAME
tk_setPalette, tk_bisque - 修改 Tk 颜色调色板

总览 SYNOPSIS
tk_setPalette background

tk_setPalette name value ?name value ...?

tk_bisque

描述 DESCRIPTION

tk_setPalette 过程改变 Tk 的颜色方案。它通过修改现存组件的颜色和修改选项数据库来做这个工作，这样将来的组件将使用新颜色方案。如果用一个单一参数调用 tk_setPalette，则这个参数是用做普通背景色的一个颜色的名字；tk_setPalette 将从这个背景色计算出一个完整的颜色调色板。作为另一个选择，给 tk_setPalette 的参数可以由任意数目的名字-值对组成，对中的第一个参数是在 Tk 选项数据库中的一个选项的名字，而第二个参数是用于这个选项的新值。当前数据库支持下列名字:
activeBackground    foreground    selectColor
activeForeground    highlightBackground    selectBackground
background    highlightColor    selectForeground
disabledForeground    insertBackground    troughColor
tk_setPalette 尝试为你没有指定的所有选项计算合理的缺省。你可以指定上述之外的选项而 Tk 同样在组件上的这些选项。这个特征对使用了额外的颜色选项的定制组件可能有用。

一旦为每个颜色选项计算了新值，tk_setPalette 检索组件层次来修改所有现存组件的选项。对于每个组件，它检查这个组件是否定义了上述选项。如果是这样，并且如果这个选项的当前值是缺省的，则改变这个值；如果这个选项有一个不是缺省的值，tk_setPalette 将不改变它。如果以前未运行 tk_setPalette，则缺省值由组件来选项提供([lindex [$w configure $option] 3])，否则它是在前面的 tk_setPalette 调用中指定的值。

在修改了在应用中的所有组件之后，tk_setPalette 向选项数据库增加选项来改变将来建立的组件的缺省值。增加的新选项在优先级 widgetDefault 上，所以将被来自 .Xdefaults 文件的选项或在建立一个组件的命令行上指定的选项所屏弃。

为向后兼容而提供了 tk_bisque: 它把应用的颜色恢复为 Tk 3.6 和以前版本中的浅黄(“bisque”)色方案。

关键字 KEYWORDS
bisque, color, palette

[中文版维护人]
寒蝉退士

[中文版最新更新]
2002/05/16

《中国 Linux 论坛 man 手册页翻译计划》:
http://cmpp.linuxforum.net