Arch manual pages

tk_setPalette(3tk) Tk Built-In Commands tk_setPalette(3tk)


tk_setPalette, tk_bisque - 修改 Tk 顏色調色板

tk_setPalette background

tk_setPalette name value ?name value ...?

tk_bisque


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”)色方案。

bisque, color, palette

寒蟬退士

2002/05/16

http://cmpp.linuxforum.net

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
4.0 Tk