Spec-Zone.ru › Tcl/Tk

палитра

Имя

tk_setPalette, tk_bisque — Изменение цветовой палитры Tk

Синопсис

tk_setPalette background
tk_setPalette имя значение ?имя значение ...?
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 не будет её изменять. Значение по умолчанию для опции — это значение, предоставленное виджетом ([lindex [$w configure $option] 3]), если ранее не была запущена tk_setPalette, в противном случае это значение, указанное в предыдущем вызове tk_setPalette.

После изменения всех виджетов в приложении, tk_setPalette добавляет опции в базу данных опций, чтобы изменить значения по умолчанию для создаваемых в будущем виджетов. Новые опции добавляются с приоритетом widgetDefault, поэтому они будут переопределены опциями из файла .Xdefaults или опциями, указанными при создании виджета.

Процедура tk_bisque предоставлена для обратной совместимости: она восстанавливает цвета приложения до цветовой схемы светло-коричневого цвета («бисквит»), используемой в Tk 3.6 и более ранних версиях.

Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TkCmd/palette.htm

Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/TkCmd/palette.htm

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API