Spec-Zone.ru › Tcl/Tk

ttk_vsapi

НАЗВАНИЕ
ttk_vsapi — Определение элемента Microsoft Visual Styles
СИНТАКСИС
ОПИСАНИЕ
ПАРАМЕТРЫ
-padding padding
-margins padding
-width width
-height height
КАРТА СОСТОЯНИЙ
ПРИМЕР
СМОТРИТЕ ТАКЖЕ
КЛЮЧЕВЫЕ СЛОВА

Имя

ttk_vsapi — Определение элемента Microsoft Visual Styles

Синтаксис

ttk::style element create name vsapi className partId ?stateMap? ?options?

Описание

Фабрика элементов vsapi создаёт новый элемент в текущей теме, визуальное отображение которого отрисовывается с помощью API Microsoft Visual Styles, отвечающего за стили тем на Windows XP и Vista. Эта фабрика позволяет объявлять любые части Visual Styles в качестве элементов Ttk, которые затем могут быть включены в макет стиля для изменения внешнего вида виджетов Ttk.

className и partId являются обязательными параметрами и указывают класс и часть Visual Styles, как указано в документации Microsoft. Параметр stateMap может быть предоставлен для сопоставления состояний Ttk со значениями состояния API Visual Styles (см. КАРТУ СОСТОЯНИЙ).

Параметры

Допустимые параметры options:
-padding padding
Указывает внутренний отступ элемента. padding — список из до четырёх целых чисел, определяющих левое, верхнее, правое и нижнее значения отступа соответственно. Этот параметр нельзя смешивать с другими параметрами.
-margins padding
Указывает внешний отступ элемента. padding — список из до четырёх целых чисел, определяющих левое, верхнее, правое и нижнее значения отступа соответственно. Этот параметр нельзя смешивать с другими параметрами.
-width width
Указывает высоту элемента. Если этот параметр установлен, API Visual Styles не будет запрошен для получения рекомендуемого размера или части. Если этот параметр установлен, то должен быть также установлен параметр -height. Параметры -width и -height нельзя смешивать с параметрами -padding или -margins.
-height height
Указывает высоту элемента. См. комментарии к параметру -width.

Карта состояний

Параметр stateMap — список состояний ttk и соответствующих значений состояния API Visual Styles. Это позволяет внешнему виду элемента реагировать на изменения состояния виджета, например, на переход в активное состояние или нажатие. Список должен быть таким же, как описано для команды ttk::style map, но обратите внимание, что последняя пара в списке — это состояние по умолчанию, и обычно это пустой список и 1. К сожалению, значения состояний для всех частей Visual Styles разные, и их необходимо искать либо в документации Microsoft, либо, скорее всего, в заголовочных файлах. Изначально использовался заголовочный файл tmschema.h, но в более новых версиях Windows Development Kit используется vssym32.h.

Если параметр stateMap не указан, подразумевается карта по умолчанию {{} 1}

Пример

Создайте правильно стилизованную кнопку закрытия, изменив макет кнопки ttk::button(n). В данном примере используется часть WINDOW WP_SMALLCLOSEBUTTON, и как указано в документации, состояния CBS_DISABLED, CBS_HOT, CBS_NORMAL и CBS_PUSHED сопоставляются с состояниями ttk.
ttk::style element create smallclose vsapi WINDOW 19 \
    {disabled 4 pressed 3 active 2 {} 1}
ttk::style layout CloseButton {CloseButton.smallclose -sticky news}
pack [ttk::button .close -style CloseButton]

Измените внешний вид ttk::checkbutton(n) для использования части Explorer pin EBP_HEADERPIN.

ttk::style element create pin vsapi EXPLORERBAR 3 {
    {pressed !selected} 3
    {active !selected} 2
    {pressed selected} 6
    {active selected} 5
    {selected} 4
    {} 1
}
ttk::style layout Explorer.Pin {Explorer.Pin.pin -sticky news}
pack [ttk::checkbutton .pin -style Explorer.Pin]

См. также

ttk::intro, ttk::widget, ttk::style, ttk_image

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

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

Spec-Zone.ru

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