TextureProgressBar

Успадковує: Range < Control < CanvasItem < Node < Object

Бар на основі текстури. Корисно для завантаження екранів і термінів життя або стеміна.

Опис

ТекстураПрогрес Бар працює як ProgressBar, але використовує до 3 текстур замість ресурсу Godot. Використовується для створення горизонтальних, вертикальних і радіальних грабів.

Властивості

int

fill_mode

0

MouseFilter

mouse_filter

1 (overrides Control)

bool

nine_patch_stretch

false

Vector2

radial_center_offset

Vector2(0, 0)

float

radial_fill_degrees

360.0

float

radial_initial_angle

0.0

BitField[SizeFlags]

size_flags_vertical

1 (overrides Control)

float

step

1.0 (overrides Range)

int

stretch_margin_bottom

0

int

stretch_margin_left

0

int

stretch_margin_right

0

int

stretch_margin_top

0

Texture2D

texture_over

Texture2D

texture_progress

Vector2

texture_progress_offset

Vector2(0, 0)

Texture2D

texture_under

Color

tint_over

Color(1, 1, 1, 1)

Color

tint_progress

Color(1, 1, 1, 1)

Color

tint_under

Color(1, 1, 1, 1)

Методи

int

get_stretch_margin(margin: Side) const

void

set_stretch_margin(margin: Side, value: int)


Переліки

enum FillMode: 🔗

FillMode FILL_LEFT_TO_RIGHT = 0

texture_progress заповнюється зліва направо.

FillMode FILL_RIGHT_TO_LEFT = 1

texture_progress заповнюється справа наліво.

FillMode FILL_TOP_TO_BOTTOM = 2

texture_progress заповнюється зверху вниз.

FillMode FILL_BOTTOM_TO_TOP = 3

texture_progress заповнюється знизу вгору.

FillMode FILL_CLOCKWISE = 4

Перетворює вузол на радіальну смугу. texture_progress заповнюється за годинниковою стрілкою. Див. radial_center_offset, radial_initial_angle та radial_fill_degrees для керування способом заповнення смуги.

FillMode FILL_COUNTER_CLOCKWISE = 5

Перетворює вузол на радіальний стрижень. texture_progress заповнюється проти годинникової стрілки. Див. radial_center_offset, radial_initial_angle та radial_fill_degrees для керування способом заповнення стрижня.

FillMode FILL_BILINEAR_LEFT_AND_RIGHT = 6

Елемент texture_progress заповнюється від центру, розширюючись як ліворуч, так і праворуч.

FillMode FILL_BILINEAR_TOP_AND_BOTTOM = 7

Елемент texture_progress заповнюється від центру, розширюючись як угору, так і вниз.

FillMode FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE = 8

Перетворює вузол на радіальну смугу. texture_progress заповнюється радіально від центру, розширюючись як за годинниковою стрілкою, так і проти неї. Див. radial_center_offset, radial_initial_angle та radial_fill_degrees, щоб керувати способом заповнення смуги.


Описи властивостей

int fill_mode = 0 🔗

  • void set_fill_mode(value: int)

  • int get_fill_mode()

Наповнювач. Подивитися FillMode для можливих значень.


bool nine_patch_stretch = false 🔗

  • void set_nine_patch_stretch(value: bool)

  • bool get_nine_patch_stretch()

Якщо true, Godot обробляє текстури панелі так само, як у NinePatchRect. Використовуйте властивості stretch_margin_*, такі як stretch_margin_bottom, щоб налаштувати сітку 3×3 для дев’яти патчів. Якщо використовується радіальний fill_mode, цей параметр увімкне розтягування лише для texture_progress, тоді як texture_under і texture_over оброблятимуться як у NinePatchRect.


Vector2 radial_center_offset = Vector2(0, 0) 🔗

  • void set_radial_center_offset(value: Vector2)

  • Vector2 get_radial_center_offset()

Зміщує texture_progress, якщо fill_mode має значення FILL_CLOCKWISE, FILL_COUNTER_CLOCKWISE або FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE.

Примітка: Ефективний радіальний центр завжди залишається в межах texture_progress. Якщо вам потрібно перемістити його за межі текстури, змініть texture_progress, щоб додати додатковий порожній простір, де це необхідно.


float radial_fill_degrees = 360.0 🔗

  • void set_fill_degrees(value: float)

  • float get_fill_degrees()

Верхня межа заповнення texture_progress, якщо fill_mode має значення FILL_CLOCKWISE, FILL_COUNTER_CLOCKWISE або FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE. Коли значення value вузла дорівнює його максимальному значенню max_value, текстура заповнюється до цього кута.

Див. Range.value, Range.max_value.


float radial_initial_angle = 0.0 🔗

  • void set_radial_initial_angle(value: float)

  • float get_radial_initial_angle()

Початковий кут для заповнення texture_progress, якщо fill_mode має значення FILL_CLOCKWISE, FILL_COUNTER_CLOCKWISE або FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE. Коли значення value вузла дорівнює його мінімальному значенню min_value, текстура взагалі не відображається. Коли значення value збільшується, текстура заповнюється та прагне до radial_fill_degrees.

Примітка: radial_initial_angle знаходиться між 0 та 360 градусами (включно).


int stretch_margin_bottom = 0 🔗

  • void set_stretch_margin(margin: Side, value: int)

  • int get_stretch_margin(margin: Side) const

Висота низу 9-патч. Помаранжування 16 означає, що нижні кути 9-х і бічні будуть мати висоту 16 пікселів. Ви можете встановити всі значення 4 запасів індивідуально для створення панелей з неоднорідними кордонами. true.


int stretch_margin_left = 0 🔗

  • void set_stretch_margin(margin: Side, value: int)

  • int get_stretch_margin(margin: Side) const

Ширина лівого стовпа 9-патч. true.


int stretch_margin_right = 0 🔗

  • void set_stretch_margin(margin: Side, value: int)

  • int get_stretch_margin(margin: Side) const

Ширина правого стовпа 9-патч. true.


int stretch_margin_top = 0 🔗

  • void set_stretch_margin(margin: Side, value: int)

  • int get_stretch_margin(margin: Side) const

Висота верхнього ряду 9-патчів. true.


Texture2D texture_over 🔗

Texture2D, що виводить над ходом бару. Використовуйте його, щоб додати родзинки або верхній кадр, який приховує частину texture_progress.


Texture2D texture_progress 🔗

Texture2D, яка обрізає значення вузла на основі значення value та режиму заповнення fill_mode. Зі збільшенням значення value текстура заповнюється. Вона повністю відображається, коли значення value досягає значення max_value. Вона взагалі не відображається, якщо значення value дорівнює мінімальному значенню мін. value.

Властивість значення value походить від значення Range. Див. Range.value, Range.min_value, Range.max_value.


Vector2 texture_progress_offset = Vector2(0, 0) 🔗

  • void set_texture_progress_offset(value: Vector2)

  • Vector2 get_texture_progress_offset()

Зсув texture_progress. Корисно для texture_over та texture_under з вигадливими рамками, щоб уникнути прозорих полів у вашій текстурі прогресу.


Texture2D texture_under 🔗

Texture2D, що виводить під хід бару. фон бара.


Color tint_over = Color(1, 1, 1, 1) 🔗

  • void set_tint_over(value: Color)

  • Color get_tint_over()

Множить колір текстури texture_over смужки. Ефект подібний до CanvasItem.modulate, за винятком того, що він впливає лише на цю конкретну текстуру, а не на весь вузол.


Color tint_progress = Color(1, 1, 1, 1) 🔗

  • void set_tint_progress(value: Color)

  • Color get_tint_progress()

Множить колір текстури texture_progress смужки.


Color tint_under = Color(1, 1, 1, 1) 🔗

  • void set_tint_under(value: Color)

  • Color get_tint_under()

Множить колір елемента texture_under смужки texture_under.


Описи методів

int get_stretch_margin(margin: Side) const 🔗

Повертає поле розтягування із заданим індексом. Див. stretch_margin_bottom та пов'язані властивості.


void set_stretch_margin(margin: Side, value: int) 🔗

Встановлює поле розтягування з заданим індексом. Див. stretch_margin_bottom та пов'язані властивості.