StyleBoxFlat
Успадковує: StyleBox < Resource < RefCounted < Object
Налаштований StyleBox, який не використовує текстуру.
Опис
Налаштувавши різні властивості цього вікна стилю, ви можете досягти багатьох загальних виглядів без потреби в текстурі. Це включає необов’язкові заокруглені рамки, згладжування, тіні та нахил.
Дозволяється встановити високі значення радіуса кута. Як тільки кути перекриваються, стильове поле перемикається на відносну систему:
height = 30
corner_radius_top_left = 50
corner_radius_bottom_left = 100
Відносна система тепер бере співвідношення 1:2 двох лівих кутів для обчислення фактичної ширини кута. Обидва додані кути ніколи не перевищуватимуть висоту. Результат:
corner_radius_top_left: 10
corner_radius_bottom_left: 20
Властивості
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Методи
get_border_width(margin: Side) const |
|
get_border_width_min() const |
|
get_corner_radius(corner: Corner) const |
|
get_expand_margin(margin: Side) const |
|
void |
set_border_width(margin: Side, width: int) |
void |
set_border_width_all(width: int) |
void |
set_corner_radius(corner: Corner, radius: int) |
void |
set_corner_radius_all(radius: int) |
void |
set_expand_margin(margin: Side, size: float) |
void |
set_expand_margin_all(size: float) |
Описи властивостей
Антіаліясинг малює невелике кільце по краях, що віддає прозорості. В результаті краї виглядають набагато гладкіше. Це тільки помітно при використанні округлих кутів або skew.
Примітка: При використанні скошованих кутів з кутами 45 градусів (corner_detail = 1), рекомендується встановити anti_aliasing на false, щоб забезпечити чіткі візуалізації і уникнути можливих візуальних блисків.
float anti_aliasing_size = 1.0 🔗
Це змінює розмір антиалюзивного ефекту. 1.0 рекомендується для оптимального результату на 100% масштабі, ідентичних як закруглені прямокутники подаються в веб-браузерах і більшості векторних програм для малювання.
Примітка: Вищі значення можуть виробляти ефект розмиття, але також можуть створювати небажані артефакти на невеликих коробках з великими радіусами.
Color bg_color = Color(0.6, 0.6, 0.6, 1) 🔗
Фоновий колір скриньок.
Якщо true, кордон буде впадати в фоновий колір.
Color border_color = Color(0.8, 0.8, 0.8, 1) 🔗
Встановлює колір кордону.
Ширина кордону для нижньої кордону.
Ширина кордону для лівого кордону.
Ширина кордону для правого кордону.
Ширина кордону для верхнього кордону.
Це встановлює кількість вершин, які використовуються для кожного кута. Більшість значень призводить до круглих кутів, але прийміть більш переробну потужність, щоб обчислити. При виборі значення слід враховувати кутовий радіус (set_corner_radius_all()).
Для кутового радіуса менше 10, 4 або 5 повинен бути достатнім. Для кутового радіуса менше 30, значення між 8 та 12 повинні бути достатніми.
Кутова деталь 1 призведе до фасування кутів замість округлих кутів, які корисні для деяких мистецьких ефектів.
int corner_radius_bottom_left = 0 🔗
Дно-лівий кутовий радіус. Якщо 0, кут не закруглений.
int corner_radius_bottom_right = 0 🔗
Дно-правий кутовий радіус. Якщо 0, кут не закруглений.
int corner_radius_top_left = 0 🔗
Верхній лівий кутовий радіус. Якщо 0, кут не закруглений.
int corner_radius_top_right = 0 🔗
Верхній кут повороту. Якщо 0, кут не закруглений.
Перемикаємо внутрішню частину стилюбокс.
float expand_margin_bottom = 0.0 🔗
Розгортає stylebox за межі прямокутника керування по нижньому краю. Корисно в поєднанні з border_width_bottom для малювання межі за межами прямокутника керування.
Примітка: На відміну від StyleBox.content_margin_bottom, expand_margin_bottom не впливає на розмір області клікабельності для Control. Це може негативно вплинути на зручність використання, якщо використовувати неправильно, оскільки користувач може спробувати клацнути на області StyleBox, яка насправді не може отримувати кліки.
float expand_margin_left = 0.0 🔗
Розгортає stylebox за межі прямокутника керування з лівого краю. Корисно в поєднанні з border_width_left для малювання межі за межами прямокутника керування.
Примітка: На відміну від StyleBox.content_margin_left, expand_margin_left не впливає на розмір області клікабельності для Control. Це може негативно вплинути на зручність використання, якщо використовувати неправильно, оскільки користувач може спробувати клацнути на області StyleBox, яка насправді не може отримувати кліки.
float expand_margin_right = 0.0 🔗
Розгортає stylebox за межі прямокутника керування по правому краю. Корисно в поєднанні з border_width_right для малювання межі за межами прямокутника керування.
Примітка: На відміну від StyleBox.content_margin_right, expand_margin_right не впливає на розмір області клікабельності для Control. Це може негативно вплинути на зручність використання, якщо використовувати неправильно, оскільки користувач може спробувати клацнути на області StyleBox, яка насправді не може отримувати кліки.
float expand_margin_top = 0.0 🔗
Розгортає stylebox за межі прямокутника керування по верхньому краю. Корисно в поєднанні з border_width_top для малювання межі за межами прямокутника керування.
Примітка: На відміну від StyleBox.content_margin_top, expand_margin_top не впливає на розмір області клікабельності для Control. Це може негативно вплинути на зручність використання, якщо використовувати неправильно, оскільки користувач може спробувати клацнути на області StyleBox, яка насправді не може отримувати кліки.
Color shadow_color = Color(0, 0, 0, 0.6) 🔗
Колір тіні. Це не має значення, якщо shadow_size менше за 1.
Vector2 shadow_offset = Vector2(0, 0) 🔗
Туні офсет у пікселях. Регулює позицію тіні відносно стильної коробки.
Розмір тіні в пікселів.
Vector2 skew = Vector2(0, 0) 🔗
Якщо встановити ненульове значення на будь-якій осі, skew спотворює StyleBox по горизонталі та/або вертикалі. Це можна використовувати для інтерфейсів у «футуристичному» стилі. Додатні значення зміщують StyleBox праворуч (вісь X) та вгору (вісь Y), тоді як від’ємні значення зміщують StyleBox ліворуч (вісь X) та вниз (вісь Y).
Примітка: Щоб текст не торкався країв StyleBox, спробуйте збільшити поле вмісту StyleBox (див. StyleBox.content_margin_bottom). Бажано збільшити поле вмісту, а не поле розгортання (див. expand_margin_bottom), оскільки збільшення поля розгортання не збільшує розмір області клікання для Control.
Описи методів
int get_border_width(margin: Side) const 🔗
Повертає вказану Side ширину кордону.
int get_border_width_min() const 🔗
Повертає найменшу ширину кордону з усіма чотирма кордонами.
int get_corner_radius(corner: Corner) const 🔗
Повертає радіус заданого corner.
float get_expand_margin(margin: Side) const 🔗
Повертає розмір вказаного Side розширення запасу.
void set_border_width(margin: Side, width: int) 🔗
Настроювання вказаної Side ширини кордону width пікселів.
void set_border_width_all(width: int) 🔗
Налаштовує бордюрну ширину width пікселів на всі боки.
void set_corner_radius(corner: Corner, radius: int) 🔗
Встановлює радіус кута на radius пікселів для заданого corner.
void set_corner_radius_all(radius: int) 🔗
Налаштовує кутовий радіус у radius пікселів на всі кути.
void set_expand_margin(margin: Side, size: float) 🔗
Налаштовує розширювальний запас до size пікселів для вказаного Side.
void set_expand_margin_all(size: float) 🔗
Встановлює поле розгортання на size пікселів для всіх сторін.