Свойства стиля (Style Properties)

Материал из Ren'Py Wiki
Перейти к навигации Перейти к поиску

Свойства стиля, связанные со стилями, управляют отображением отображаемых объектов. Свойства стиля могут быть заданы либо без префикса, в этом случае они применяются ко всем состояниям отображаемого объекта, либо с префиксом, ограничивающим свойство ограниченным числом состояний.

Префиксы свойств стиля (Style Property Prefixes)[править | править код]

Применение префикса к свойству стиля означает, что отображаемый объект может изменить свой внешний вид в зависимости от его фокуса или статуса выбора. Например, кнопка может изменить свой цвет, когда курсор мыши находится над ней, или, чтобы указать, является ли выбор, представленный кнопкой, выбранным в данный момент.


Есть пять состояний, которые можно отобразить:

insensitive
Используется, когда пользователь не может взаимодействовать с отображаемым элементом.
idle
Используется, когда отображаемый объект не сфокусирован и не выбран.
hover
Используется, когда отображаемый объект сфокусирован, но не выбран.
selected_idle
Используется, когда отображаемый объект не сфокусирован и выбран.
selected_hover
Используется, когда отображаемый объект сфокусирован и выбран.


Отображаемые кнопки и панели (и их варианты) обновляют своё состояние и состояние своих дочерних элементов в ответ на события. Например, когда игрок наводит курсор мыши на невыбранную кнопку, она и все её дочерние элементы будут переведены в состояние hover.


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

Система импликаций:

Префикс Состояния, подразумеваемые префиксом
(без префикса) insensitive, idle, hover, selected_idle, selected_hover
idle_ idle, selected_idle
hover_ hover, selected_hover
selected_ selected_idle, selected_hover
insensitive_ insensitive
selected_idle_ selected_idle
selected_hover_ selected_hover
selected_insensitive_ selected_insensitive

Используя текстовую кнопку, мы можем показать это в действии. Текстовые кнопки по умолчанию используют два стиля: button для самой кнопки и button_text для текста внутри кнопки. Свойство стиля background задает фон кнопки, а свойство color – цвет текста:

# Фон кнопки серый, когда она в состоянии insensitive, светло-синий, когда – hover,
# иначе темно-синий.
style button:
    background "#006"
    insensitive_background "#444"
    hover_background "#00a"

# Текст кнопки желтый, когда она выбрана, 
# иначе белый.
style button_text:
    color "#fff"
    selected_color "#ff0"

Значения свойств стиля (Style Property Values)[править | править код]

Каждое свойство стиля ожидает определенный тип данных. Многие из них являются стандартными типами в Python, но некоторые из них являются новыми. Ниже приведены описания новых видов значений, которые может ожидать свойство стиля.

position
Позиции используются для определения местоположений относительно верхнего левого угла охватывающей области. Для позиций охватывающая область задаётся разметкой отображаемого объекта, если он задан, или экраном в ином случае. Для точек привязки охватывающая область является размером самого отображаемого объекта.
Способ интерпретации значения позиции зависит от типа значения:
Целое число (например, 0, 1, 37 или 42)
Целое число интерпретируется как количество пикселей с левой или верхней стороны охватывающей области.
Число с плавающей точкой (например, 0.0, 0.5 или 1.0)
Число с плавающей точкой интерпретируется как часть охватывающей его области. Например, 0.5 – точка на полпути между сторонами охватывающей области, а 1.0 – справа или снизу.
renpy.absolute (например, renpy.absolute(100.25))
Число renpy.absolute интерпретируется как количество пикселей с левой или верхней стороны экрана при использовании субпиксельного рендеринга.
displayable
Любой отображаемый объект. Если он содержит подстановку "[prefix_]", поиск префикса выполняется, как описано ниже.
color
Цвета в Ren'Py могут быть выражены в виде строк, начинающихся с символа #, за которой следует шестнадцатеричная тройная или шестнадцатеричная четверка, причем каждый из трех или четырех элементов состоит из одного или двух шестнадцатеричных символов цветового кода.
В тройке компоненты представляют красный, зеленый и синий цвета. В четверке компоненты представляют красный, зеленый, синий и альфа. Например:
  • "#f00" и "#ff0000" представляют непрозрачный красный цвет.
  • "#0f08" и #00ff0080" представляют полупрозрачный зелёный цвет.
Цветовые тройки такие же, как в HTML.
Цвета также могут быть представлены в виде четырехкомпонентного кортежа, где 4 компонента являются целыми числами от 0 до 255. Компоненты соответствуют красному, зеленому, синему и альфа в указанном порядке.
  • (0, 0, 255, 255) представляет собой непрозрачный синий цвет.
Наконец, цвета могут быть экземпляром класса Color.


◇ Поиск префикса стиля[править | править код]

Когда свойство стиля содержит подстановку "[prefix_]", выполняется поиск по префиксу. Поиск префикса выполняется отдельно для каждого состояния, включая состояния, подразумеваемые исходным назначенным свойством.

Например, если у нас есть:

style button:
    hover_background "[prefix_]background.png"

отдельные поиски выполняются для состояний hover и selected_hover. Искомые префиксы варьируются в зависимости от состояния.

Состояние Порядок поиска
idle "idle_", ""
hover "hover_", "",
insensitive "insensitive_", "", "idle_"
selected_idle "selected_idle_", "idle_", "selected_", ""
selected_hover "selected_hover_", "hover_", "selected_", ""
selected_insensitive "selected_insensitive_", "hover_", "selected_", "", "selected_idle_", "idle_"

При выполнении поиска каждый префикс рассматривается в указанном порядке. Строка заменяет префикс «[prefix_]» на префикс, а затем Ren'Py проверяет, существует ли загружаемый файл или изображение с таким именем. Если файл или изображение существуют, поиск останавливается и найденный отображаемый объект используется. Иначе Ren'Py переходит к следующему префиксу.

Префикс стиля передается через отображаемые элементы, которые не принимают пользовательский ввод, включая контейнеры, преобразования и фреймы.

Как пример того, как это можно использовать, если существуют файлы "idle_button.png" и "hover_button.png", а другие файлы, заканчивающиеся на "button.png" не существуют:

style button:
    background "[prefix_]button.png"

эквивалентно:

style button:
    idle_background "idle_button.png"
    hover_background "hover_button.png"
    insensitive_background "idle_button.png"

    selected_idle_background "idle_button.png"
    selected_hover_background "hover_button.png"
    selected_insensitive_background "idle_button.png"

Список всех свойств стиля (List of All Style Properties)[править | править код]

Свойства стиля управляют внешним видом различных отображаемых элементов. Не все свойства стиля применимы ко всем отображаемым объектам, поэтому мы разделили их на группы.


◇ Свойства стиля позиции[править | править код]

Эти свойства применяются ко всем отображаемым объектам и в основном управляют положением отображаемого объекта внутри области, выделенной для него разметкой, или на экране, когда он не находится внутри разметки.


alt - строка или None

Альтернативный текст, используемый для отображаемого объекта, когда включено самозвучивание. Дополнительную информацию смотрите в разделе «Озвучивание текста на экране для людей с ослабленным зрением».


xpos - позиция

Положение отображаемого объекта относительно левой стороны охватывающей его области.


ypos - позиция

Положение отображаемого объекта относительно верхней стороны охватывающей его области.


pos - кортеж из (позиция, позиция)

Эквивалентно установке xpos для первого компонента кортежа и ypos для второго компонента кортежа.


xanchor - позиция

Положение привязки относительно левой стороны отображаемого объекта.


yanchor - позиция

Положение привязки относительно верхней стороны отображаемого объекта.
Если отображаемый объект является Text(), то существует одно специальное значение этого свойства. Если для свойства установлено значение renpy.BASELINE, привязка устанавливается на базовую линию первой строки текста.


anchor - кортеж из (позиция, позиция)

Эквивалентно установке xanchor для первого компонента кортежа и yanchor для второго компонента кортежа.


xalign - число с плавающей точкой

Эквивалентно установке xpos и xanchor на одно и то же значение. Даёт эффект размещения отображаемого в относительном положении на экране, причем 0.0 – левая сторона, 0.5 – центр и 1.0 – правая сторона.


yalign - число с плавающей точкой

Эквивалентно установке ypos и yanchor на одно и то же значение. Даёт эффект размещения отображаемого в относительном положении на экране, причем 0.0 – вверх, 0.5 – центр и 1.0 – нижняя сторона.


align - кортеж из (число с плавающей точкой, число с плавающей точкой)

Эквивалентно установке xalign для первого компонента кортежа и yalign для второго.


xcenter - позиция

Эквивалентно тому, что для xpos установлено значение этого свойства, а для xanchor - 0,5.


ycenter - позиция

Эквивалентно тому, что для ypos установлено значение этого свойства, а для yanchor - 0,5.


xoffset - целое число

Задаёт количество пикселей, которые добавляются в горизонтальное положение, вычисленной с помощью xpos и xalign.


yoffset - целое число

Задаёт количество пикселей, которые добавляются в вертикальное положение, вычисленной с помощью ypos и yalign.


offset - кортеж из (позиция, позиция)

Эквивалентно установке xpos для первого компонента кортежа и ypos для второго компонента кортежа.


xmaximum - целое число

Задаёт максимальный горизонтальный размер отображаемого объекта в пикселях.


ymaximum - целое число

Задаёт максимальный вертикальный размер отображаемого объекта в пикселях.


maximum - кортеж из (целое число, целое число)

Эквивалентно установке xmaximum для первого компонента кортежа и ymaximum для второго.


xminimum - целое число

Задает минимальную ширину отображаемого объекта в пикселях. Работает только с отображаемыми элементами, которые могут менять свой размер.


yminimum - целое число

Задает минимальную высоту отображаемых объектов в пикселях. Работает только с отображаемыми элементами, которые могут менять свой размер.


minimum - кортеж из (целое число, целое число)

Эквивалентно установке xminimum для первого компонента кортежа и yminimum для второго.


xsize - целое число

Эквивалентно установке xminimum и xmaximum на одно и то же значение. Даёт эффект установки ширины отображаемого объекта.


ysize - целое число

Эквивалент установке yminimum и ymaximum на одно и то же значение. Даёт эффект установки высоты отображаемого объекта.


xysize - кортеж из (целое число, целое число)

Эквивалентно установке xminimum и xmaximum для первого компонента кортежа, а yminimum и ymaximum для второго компонента. Даёт эффект установки размера отображаемого объекта.


xfill - логическое значение

Если принимает значение True, отображаемый объект расширится и заполнит все доступное горизонтальное пространство. Если принимает значение не True, будет достаточно большой, чтобы вместить свои дочерние элементы.
Работает только для отображаемых элементов, которые могут изменять размер.


yfill - логическое значение

Если принимает значение True, отображаемый объект расширится и заполнит все доступное вертикальное пространство. Если принимает значение не True, будет достаточно большой, чтобы вместить свои дочерние элементы.
Работает только для отображаемых элементов, которые могут изменять размер.


area - кортеж из (целое число, целое число, целое число, целое число)

Кортеж интерпретируется как (xpos, ypos, width, height). Пытается расположить отображаемый объект таким образом, чтобы его верхний левый угол был в xpos и ypos, а его размер – width и height.
Он делает это, устанавливая свойства xpos, ypos, xanchor, yanchor, xmaximum, ymaximum, xminimum, yminimum, xfill и yfill в соответствующие значения.
Не будет работать со всеми отображаемыми объектами и всеми разметками.


◇ Свойства стиля текста[править | править код]


antialias - логическое значение

Если принимает значение True, по умолчанию текст шрифта TrueType будет отображаться со сглаживанием.


adjust_spacing - логическое значение или str

Если принимает значение True, Ren'Py будет корректировать интервал прорисовываемого текста с разрешением, чтобы он соответствовал интервалу текста, отображаемого при виртуальном разрешении, чтобы размер фреймов и других контейнеров, содержащих текст, не изменялся.
Если задано значение False, размер текста не изменится, но ответственность за обеспечение достаточного пространства для размещения текста в любом размере окна лежит на разработчике.
Если задана строка "horizontal", текст будет корректироваться только в горизонтальном направлении. Если задана строка "vertical", текст будет корректироваться только в вертикальном направлении.
Значение по умолчанию True для большинства текстов, но значение False для текста в input.


altruby_style - стиль или None

Если принимает значение не None, это должен быть объект стиля. Стиль, используемый для альтернативного текста руби.


black_color - цвет

При рендеринге шрифта на основе изображения черный цвет будет сопоставлен с этим цветом. Это не влияет на шрифты TrueType.


bold - логическое значение

Если принимает значение True, то выводите шрифт полужирным шрифтом. Для шрифта TrueType это обычно включает синтетическое увеличение веса шрифта. Также может привести к переназначению шрифта с помощью config.font_replacement_map.


caret - отображаемый объект или None

Если принимает значение не None, это должно быть отображаемым объектом. Виджет ввода будет использовать его в качестве курсора в конце текста. Если принимает значение None, то в качестве курсора используется линия шириной 1 пиксель.


color - цвет

Цвет, в котором отображается текст. При использовании шрифта TrueType шрифт отображается в этом цвете. При использовании шрифта на основе изображения белый цвет сопоставляется с этим цветом.


first_indent - целое число

Интервал отступов первой строки текста в абзаце в пикселях.


font - строка

Строка с именем шрифта, используемого для отображения текста.
Для файла шрифта TrueType это обычно имя файла, содержащего шрифт (например, "DejaVuSans.ttf"). Чтобы выбрать второй шрифт в коллекции, к нему можно добавить префикс с номером и знаком (например, "0@font.ttc" или "1@font.ttc"). Для шрифта на основе изображения это должно быть имя, используемое для регистрации шрифта.


size - целое число

Размер шрифта на экране. Хотя это номинально выражено в пикселях, файлы шрифтов могут иметь творческие интерпретации этого значения.


italic - логическое значение

Если принимает значение True, текст будет выделен курсивом. Для шрифта TrueType это обычно включает в себя синтетическое увеличение наклона шрифта. Также может привести к переназначению шрифта с помощью config.font_replacement_map.


justify - логическое значение

Если принимает значение True, то между словами вставляется дополнительный пробел так, чтобы левые и правые поля каждой строки были четными. Это не выполняется в последней строке абзаца.


kerning - число с плавающей точкой

Настройка кернинга, количество пикселей в пространстве, добавляемое между каждой парой символов. Может быть отрицательным, чтобы удалить пробел между символами.


language - строка

Управляет семейством языков, используемых для разбиения текста на строки. Допустимые значения:
"unicode" (по умолчанию)
Использует алгоритм разрыва строки Unicode, который подходит для большинства языков.
"japanese-strict"
Форматирует текст на японском языке в "строгой" манере. Запрещает разрывы перед малыми знаками Каны и длительными звуковыми знаками.
"japanese-normal"
Форматирует текст на японском языке в "обычной" манере. Допускает разрывы перед малыми знаками Каны, длительными звуковыми знаками и определенными дефисами.
"japanese-loose"
Форматирует текст на японском языке в "свободной" манере. Допускает разрывы перед малыми знаками Каны, длительными звуковыми знаками, знаками итерации, неразрывными символами, центрированными знаками пунктуации и постфиксами. А также допускает разрывы перед префиксами.
"korean-with-spaces"
Используется для текста на корейском языке, разделенного пробелами. Предотвращает разрыв строки между соседними корейскими буквами.
"western"
Позволяет разбивать текст только на пробелы. Подходит для большинства языков.
Три японских режима разбиения текста взяты из текстового модуля CSS3.


layout - строка

Управляет тем, как слова распределяются по строкам. Допустимые значения:
"tex" (по умолчанию)
Использует алгоритм переноса строк Кнута-Пратта, который пытается свести к минимуму разницу в длине всех строк, кроме последней.
"subtitle"
Использует алгоритм переноса строк Кнута-Пратта, но пытается выровнять длину всех строк.
"greedy"
Слово помещается в первую строку, в которой есть место для этого.
"nobreak"
Не разрывает строки.


line_leading - целое число

Количество пикселей интервала, которые нужно добавить над каждой строкой.


line_overlap_split - целое число

Когда в медленном текстовом режиме две строки перекрываются, это количество пикселей перекрытия выделяется на верхнюю строку. Увеличьте это значение, если нижние части символов в верхней строке обрезаны.


line_spacing - целое число

Количество пикселей интервала, которые нужно добавить под каждой строкой.


min_width - целое число

Задает минимальную ширину каждой такой строки. Если строка короче этой, она заполняется до этой длины, а text_align используется для указания места размещения такого заполнения.


newline_indent - логическое значение

Если принимает значение True, отступ first_indent используется после каждой новой строки в строке. Иначе используется отступ rest_indent.


outlines - список кортежей (целое число, цвет, целое число, целое число)

Список контуров, которые нарисованы за текстом. Каждый кортеж задаёт контур, и контуры рисуются от начала до конца.
Список содержит кортежи (size, color, xoffset, yoffset). size – размер шрифта в пикселях, color – цвет контура, xoffset и yoffset – величина смещения контура в пикселях.
Функциональность контура также может быть использована для придания теням шрифтам, указав размер 0 и ненулевое смещение.
По умолчанию size, xoffset и yoffset масштабируются вместе с текстом. Когда они заданы как абсолютный тип, они не масштабируются. Например:
style default:
    outlines [ (absolute(1), "#000", absolute(0), absolute(0)) ]
всегда будет создаваться граница шириной в 1 пиксель.
Контуры работают только со шрифтами TrueType.


rest_indent - целое число

Задает количество пикселей, на которые отступает вторая и последующие строки абзаца.


ruby_style - стиль или None

Если принимает значение не None, это должен быть объект стиля. Стиль, используемый для текста руби.


slow_abortable - логическое значение

Если принимает значение True, щелчок, достигающий объекта Text, приведёт к прерыванию медленного текста, что означает, что остальная часть медленного текста будет отображаться мгновенно.


slow_cps - целое число или True

Если число, показывает текст со скоростью этого количества символов в секунду. Если принимает значение True, показывает текст со скоростью, взятой из настройки «Скорость текста».


slow_cps_multiplier - число с плавающей точкой

Скорость текста умножается на это число. Это может быть использовано для того, чтобы персонаж говорил с более высокой скоростью, чем обычно.


strikethrough - логическое значение

Если принимает значение True, по тексту будет проведена линия.


text_align - число с плавающей точкой

Используется, когда строка короче ширины отображаемого текста. Он определяет, сколько дополнительного пространства находится в левой части текста (и, следовательно, выравнивание текста).
0.0 приведет к выравниванию текста по левому краю, 0.5 – по центру и 1.0 – по правому краю.


underline - логическое значение

Если принимает значение True, в текст будет добавлено подчеркивание.


hyperlink_functions - кортеж из (функция, функция, функция)

Кортеж из трех функций, связанных с гиперссылками в тексте.
Первый элемент – функция стиля гиперссылки. При вызове с одним аргументом, аргументом гиперссылки, он должен возвращать объект стиля, используемый для гиперссылки, например style.hyperlink_text. Обратите внимание, что объект стиля не является строкой.
Вторым элементом является функция с гиперссылкой. Эта функция вызывается, когда пользователь выбирает гиперссылку. Если она возвращает значение, отличное от None, взаимодействие возвращает это значение.
Третий элемент – функция фокусировки гиперссылки. Эта функция вызывается с аргументом гиперссылки, когда гиперссылка получает фокус, и со значением None, когда она теряет фокус. Если она возвращает значение, отличное от None, взаимодействие возвращает это значение.


vertical - boolean

Если принимает значение True, текст будет отображаться вертикально.


hinting - str

Управляет тем, как шрифт будет подсказан. Должна быть одна из следующих строк:
"auto"
По умолчанию принудительно использует автоматическую подсказку Freetype.
"bytecode"
Использует информацию подсказок байт-кода, найденную в шрифте.
"none"
Не намекает на шрифт.


◇ Свойства стиля окна[править | править код]

Свойства окна используются для задания внешнего вида окон, фреймов и кнопок.


background - отображаемый объект или None

Отображаемый объект, который используется в качестве фона окна. Это часто Frame(), позволяющий масштабировать размер фона вместе с размером окна.
Если принимает значение None, фон не выводится, но другие свойства работают так, как если бы фон присутствовал.


foreground - отображаемый объект или None

Если принимает значение не None, этот отображаемый объект отображается над содержимым окна.


left_margin - целое число

Количество прозрачного пространства слева от фона в пикселях.


right_margin - целое число

Количество прозрачного пространства справа от фона в пикселях.


xmargin - целое число

Эквивалентно установке left_margin и right_margin в одно и то же значение.


top_margin - целое число

Количество прозрачного пространства над фоном в пикселях.


bottom_margin - целое число

Количество прозрачного пространства под фоном в пикселях.


ymargin - целое число

Эквивалентно установке top_margin и bottom_margin в одно и то же значение.


margin - кортеж

Если задан кортеж из двух элементов, это эквивалентно установке xmargin и ymargin для этих двух элементов. Если задан кортеж из четырех элементов, это эквивалентно установке left_margin_, top_margin_, right_margin_ и bottom_margin_ для четырех элементов.


left_padding - целое число

Объем пространства между фоном и левой стороной содержимого окна в пикселях.


right_padding - целое число

Объем пространства между фоном и правой стороной содержимого окна в пикселях.


xpadding - целое число

Эквивалентно установке left_padding и right_padding в одно и то же значение.


top_padding - целое число

Объем пространства между фоном и верхней стороной содержимого окна в пикселях.


bottom_padding - целое число

Объем пространства между фоном и нижней стороной содержимого окна в пикселях.


ypadding - целое число

Эквивалентно установке top_padding и bottom_padding на одно и то же значение.


padding - кортеж

Если задан кортеж из двух элементов, это эквивалентно установке xpadding и ypadding для этих двух элементов. При задании кортежа из четырех элементов, эквивалентного установке left_padding, top_padding, right_padding и bottom_padding для четырех элементов.


size_group - строка или None

Если принимает значение не None, это должна быть строка. Ren'Py отобразит все окна с одинаковым значением size_group в одном размере.


◇ Свойства стиля кнопки[править | править код]


child - отображаемый объект или None

Если принимает значение не None, задаёт отображаемый объект, который заменяет дочерний элемент кнопки. Например, это (как insensitive_child) можно использовать для замены содержимого нечувствительной кнопки изображением, которое указывает, что кнопка заблокирована.


hover_sound - строка

Звук, который проигрывается при наведении на кнопку.


activate_sound - строка

Звук, который проигрывается при нажатии на кнопку.


mouse - строка

Стиль мыши, который используется, когда кнопка находится в фокусе. Это должен быть один из стилей в config.mouse.


focus_mask - множитель

Маска, которая используется для управления тем, какие части кнопки могут быть сфокусированы и, следовательно, нажаты. Вид этого свойства определяет способ его интерпретации:
Отображаемый объект (Displayable)
Непрозрачные области отображаемого объекта, которые вызывают фокусировку кнопки.
True
Сама кнопка используется в качестве отображаемого объекта (поэтому непрозрачные области кнопки вызывают фокусировку кнопки).
callable
Если задан не отображаемый вызываемый объект (например, функция, метод или объект с методом __call__), функция вызывается с двумя аргументами – смещением x и y от верхнего левого угла отображаемого объекта. Если функция возвращает значение True, то отображаемый объект фокусируется.
None
Если ничего не задано, можно сфокусировать всю кнопку целиком.


keyboard_focus - логическое значение

Если принимает значение True, по умолчанию эта кнопка может быть сфокусирована с помощью механизма фокусировки клавиатуры, если она вообще может быть сфокусирована. Если принимает значение False, механизм фокусировки клавиатуры пропустит эту кнопку. Механизм фокусировки клавиатуры используется клавиатурами и клавиатурными устройствами, такими как джойстики.


key_events - логическое значение

Если принимает значение True, то события, генерируемые клавиатурой, передаются дочерним элементам этой кнопки. Если принимает значение False, эти события не распространяются. В этом стиле по умолчанию для этого параметра установлено значение True, когда на кнопку наведен курсор мыши, иначе значение False.
Установка этого значения в True может использоваться для распространения событий клавиатуры на вход внутри кнопки, даже если кнопка не сфокусирована.


◇ Свойства стиля панели[править | править код]

Панели отображаются с промежутком слева и справа, которые при нажатии могут привести к небольшому перемещению панели. Оставшееся пространство – часть панели, которая может изменяться, причем величина на каждой стороне пропорциональна значению панели в виде доли диапазона.

Бегунок – область в центре панели, которую игрок может перетащить.

Когда выводится панель, сначала отображается тень бегунка. Затем левая/нижняя и правая/верхняя стороны панели, а затем сам бегунок.

Обратите внимание, что допустимые стороны панели зависят от значения свойства bar_vertical. Если принимает значение True, верхняя и нижняя стороны являются актуальными. Иначе используются левая и правая стороны.


bar_vertical - логическое значение

Если принимает значение True, панель имеет вертикальную ориентацию. Если принимает значение False, он имеет горизонтальную ориентацию.


bar_invert - логическое значение

Если принимает значение True, значение панели отображается на правой/верхней стороне панели, а не на левой/нижней стороне.


bar_resizing - логическое значение

Если принимает значение True, мы изменим размеры сторон панели. Если принимает значение False, мы визуализируем стороны панели в полном размере, а затем обрезаем их.


left_gutter - целое число

Размер промежутка с левой стороны панели в пикселях.


right_gutter - целое число

Размер промежутка на правой стороне панели в пикселях.


top_gutter - целое число

Размер промежутка на верхней стороне панели в пикселях.


bottom_gutter - целое число

Размер промежутка на нижней стороне панели в пикселях.


left_bar - отображаемый объект

Отображаемый объект используется для левой стороны панели.


right_bar - отображаемый объект

Отображаемый объект используется для правой стороны панели.


top_bar - отображаемый объект

Отображаемый объект используется для верхней стороны панели.


bottom_bar - отображаемый объект

Отображаемый объект используется для нижней стороны панели.


base_bar - отображаемый объект

Один отображаемый объект, который используется для left_bar/right_bar или top_bar/bottom_bar, в зависимости от ситуации. Это может использоваться с бегунком, чтобы сделать ползунок или полосу прокрутки.


thumb - отображаемый объект или None

Если принимает значение не None, это отображаемый объект, который отображается через разрыв между сторонами панели.


thumb_shadow - отображаемый объект или None

Если принимает значение не None, это отображаемый объект, который отображается через разрыв между сторонами панели.


thumb_offset - целое число

Интервал, на который бегунок перекрывает панели в пикселях. Чтобы левая и правая панели оставались непрерывными, установите это значение равным половине ширины бегунка в пикселях.


mouse - строка

Стиль мышь, которая используется, когда кнопка находится в фокусе. Это должен быть один из стилей в config.mouse.


unscrollable - строка или None

Управляет тем, что происходит, если панель не прокручивается (если диапазон установлен на 0, как в случае с областью просмотра, содержащей отображаемый объект меньше самого себя). Есть три возможных значения:
None
Отрисовывает панель нормально.
"insensitive"
Выводит панель в нечувствительном состоянии. Это позволяет панели изменить свой стиль, чтобы отразить ее недостаточную полезность.
"hide"
Предотвращает отображение панели вообще. Для панели будет выделено место, но в этом пространстве ничего не будет нарисовано.


keyboard_focus - логическое значение

Если принимает значение True, по умолчанию эта кнопка может быть сфокусирована с помощью механизма фокусировки клавиатуры, если она вообще может быть сфокусирована. Если принимает значение False, механизм фокусировки клавиатуры пропустит эту кнопку. Механизм фокусировки клавиатуры используется клавиатурами и клавиатурными устройствами, такими как джойстики.


◇ Свойства стиля блочного элемента[править | править код]

Используются для горизонтальной и вертикальной компоновки блочного элемента.


spacing - целое число

Интервал между элементами этого блочного элемента в пикселях.


first_spacing - целое число

Если принимает значение не None, расстояние между первым и вторым элементами этого блочного элемента в пикселях. Это переопределяет свойство spacing.


box_reverse - логическое значение

Если принимает значение True, размещение элементов в блочном элементе будет изменено на противоположное. Когда принимает значение True, hbox будет заполнен справа налево, а vbox будет заполнен снизу вверх. По умолчанию принимает значение False.


box_wrap - логическое значение

Если принимает значение True, блочные элементы будут перенесены, когда они достигнут конца строки или столбца. Когда принимает значение False (по умолчанию), они растянутся дальше конца строки.


box_wrap_spacing - целое число

Если box_wrap принимает значение True, то интервал между перенесенными строками или столбцами. Таким образом, это вертикальный интервал между строками в переносимом hbox и горизонтальный интервал между столбцами в переносимом vbox.


◇ Свойства стиля сетки[править | править код]

Используется отображаемыми объектами grid и vpgrid.


spacing - целое число

Расстояние между ячейками сетки в пикселях.


xspacing - целое число или None

Расстояние между ячейками сетки в горизонтальном направлении в пикселях. Имеет приоритет над свойством spacing, когда оно не None.


yspacing - целое число или None

Расстояние между ячейками сетки в вертикальном направлении в пикселях. Имеет приоритет над свойством spacing, когда оно не None.


◇ Свойства стиля фиксированного элемента[править | править код]

Используются с фиксированной компоновкой.


fit_first - логическое значение или "width" или "height"

Если принимает значение True, размер фиксированной компоновки будет уменьшен до размера первого элемента в компоновке. Если "width", то изменяется только ширина (фиксированная ширина будет заполнять экран вертикально). Точно так же "height" изменяет только высоту.


xfit - логическое значение

Если принимает значение True, размер фиксированной компоновки уменьшается по горизонтали, чтобы соответствовать правой стороне самого правого дочернего элемента этой компоновки.


yfit - логическое значение

Если принимает значение True, размер фиксированной компоновки уменьшается вертикально, чтобы соответствовать нижней стороне самого нижнего дочернего элемента этой компоновки.


order_reverse - логическое значение

Если принимает значение False, по умолчанию элементы в поле будут отображаться от первого до последнего, причём первый элемент в блочном элементе будет ниже второго, и так далее. Если принимает значение True, этот порядок будет изменён, и первый элемент в блоке будет выше всех других элементов в блочном элементе.

Источник[править | править код]

Статья "Style Properties" на английском языке.


На главную страницу Официальная документация движка Вернуться к началу статьи