Button

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

Успадковано від: CheckBox, CheckButton, ColorPickerButton, MenuButton, OptionButton

Тематична кнопка, яка може містити текст і значок.

Опис

Button — стандартна тематична кнопка. Він може містити текст і значок і відображатиме їх відповідно до поточної Theme.

Приклад створення кнопки та призначення дії при натисканні кодом:

func _ready():
     var bottom = Button.new()
     button.text = "Натисни мене"
     button.pressed.connect(self._button_pressed)
     add_child (кнопка)

func _button_pressed():
     print("Привіт, світ!")

Дивіться також BaseButton, який містить загальні властивості та методи, пов’язані з цим вузлом.

Примітка: кнопки не інтерпретують сенсорний ввід і тому не підтримують мультидотик, оскільки емуляція миші може натискати лише одну кнопку в певний момент часу. Використовуйте TouchScreenButton для кнопок, які запускають рух або дії під час гри.

Посібники

Властивості

HorizontalAlignment

alignment

1

AutowrapMode

autowrap_mode

0

BitField[LineBreakFlag]

autowrap_trim_flags

128

bool

clip_text

false

bool

expand_icon

false

bool

flat

false

Texture2D

icon

HorizontalAlignment

icon_alignment

0

String

language

""

String

text

""

TextDirection

text_direction

0

OverrunBehavior

text_overrun_behavior

0

VerticalAlignment

vertical_icon_alignment

1

Властивості теми

Color

font_color

Color(0.875, 0.875, 0.875, 1)

Color

font_disabled_color

Color(0.875, 0.875, 0.875, 0.5)

Color

font_focus_color

Color(0.95, 0.95, 0.95, 1)

Color

font_hover_color

Color(0.95, 0.95, 0.95, 1)

Color

font_hover_pressed_color

Color(1, 1, 1, 1)

Color

font_outline_color

Color(0, 0, 0, 1)

Color

font_pressed_color

Color(1, 1, 1, 1)

Color

icon_disabled_color

Color(1, 1, 1, 0.4)

Color

icon_focus_color

Color(1, 1, 1, 1)

Color

icon_hover_color

Color(1, 1, 1, 1)

Color

icon_hover_pressed_color

Color(1, 1, 1, 1)

Color

icon_normal_color

Color(1, 1, 1, 1)

Color

icon_pressed_color

Color(1, 1, 1, 1)

int

align_to_largest_stylebox

0

int

h_separation

4

int

icon_max_width

0

int

line_spacing

0

int

outline_size

0

Font

font

int

font_size

Texture2D

icon

StyleBox

disabled

StyleBox

disabled_mirrored

StyleBox

focus

StyleBox

hover

StyleBox

hover_mirrored

StyleBox

hover_pressed

StyleBox

hover_pressed_mirrored

StyleBox

normal

StyleBox

normal_mirrored

StyleBox

pressed

StyleBox

pressed_mirrored


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

HorizontalAlignment alignment = 1 🔗

Політика вирівнювання тексту кнопки.


AutowrapMode autowrap_mode = 0 🔗

Якщо встановлено щось інше, ніж TextServer.AUTOWRAP_OFF, текст буде загорнуто всередину обмежувального прямокутника вузла.


BitField[LineBreakFlag] autowrap_trim_flags = 128 🔗

Прапорці обрізання пробілів при автоматичному перенесенні. Див. TextServer.BREAK_TRIM_START_EDGE_SPACES та TextServer.BREAK_TRIM_END_EDGE_SPACES для отримання додаткової інформації.


bool clip_text = false 🔗

  • void set_clip_text(value: bool)

  • bool get_clip_text()

Якщо true, текст, який завеликий для розміщення кнопки, обрізається горизонтально. Якщо false, кнопка завжди буде достатньо широкою, щоб утримувати текст. Текст не обрізається вертикально, і ця властивість не впливає на висоту кнопки.


bool expand_icon = false 🔗

  • void set_expand_icon(value: bool)

  • bool is_expand_icon()

Якщо ввімкнено, піктограма кнопки розширюватиметься/зменшуватиметься, щоб відповідати розміру кнопки, зберігаючи її аспект. Дивіться також icon_max_width.


bool flat = false 🔗

  • void set_flat(value: bool)

  • bool is_flat()

Плоскі гудзики не мають декору.


Texture2D icon 🔗

Значок кнопки, якщо текст присутній, значок буде розміщено перед текстом.

Щоб редагувати поля та інтервали піктограми, використовуйте властивість теми h_separation і властивості content_margin_* використовуваних елементів StyleBox.


HorizontalAlignment icon_alignment = 0 🔗

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


String language = "" 🔗

Код мови, який використовується для розриву рядків і алгоритмів формування тексту, якщо залишити пустим, замість нього використовується поточна мова.


String text = "" 🔗

Текст кнопки, який відображатиметься в області кнопки.


TextDirection text_direction = 0 🔗

Основний напрямок написання тексту.


OverrunBehavior text_overrun_behavior = 0 🔗

Встановлює поведінку відсікання, коли текст виходить за межі прямокутника, що обмежує вузол.


VerticalAlignment vertical_icon_alignment = 1 🔗

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


Описи тематичної нерухомості

Color font_color = Color(0.875, 0.875, 0.875, 1) 🔗

Типовий Color тексту Button.


Color font_disabled_color = Color(0.875, 0.875, 0.875, 0.5) 🔗

Текст Color використовується, коли Button вимкнено.


Color font_focus_color = Color(0.95, 0.95, 0.95, 1) 🔗

Color тексту, який використовується, коли Button у фокусі. Замінює лише звичайний колір тексту кнопки. Вимкнений, наведений та натиснутий стани мають пріоритет над цим кольором.


Color font_hover_color = Color(0.95, 0.95, 0.95, 1) 🔗

Color тексту, який використовується, коли на Button наведено курсор.


Color font_hover_pressed_color = Color(1, 1, 1, 1) 🔗

Color тексту, який використовується при наведенні та натиску Button.


Color font_outline_color = Color(0, 0, 0, 1) 🔗

Відтінок контуру тексту кнопки Button.


Color font_pressed_color = Color(1, 1, 1, 1) 🔗

Color тексту, який використовується при натиску Button.


Color icon_disabled_color = Color(1, 1, 1, 0.4) 🔗

Color модуляції іконки, що використовується, коли Button вимкнена.


Color icon_focus_color = Color(1, 1, 1, 1) 🔗

Color модуляції іконки, що використовується, коли Button у фокусі. Замінює лише звичайний модульований колір кнопки. Вимкнений, наведений та натиснутий стани мають пріоритет над цим кольором.


Color icon_hover_color = Color(1, 1, 1, 1) 🔗

Color модуляції іконки використовується при наведенні на Button.


Color icon_hover_pressed_color = Color(1, 1, 1, 1) 🔗

Color модуляції іконки, що використовується при наведенні чи натисненні Button.


Color icon_normal_color = Color(1, 1, 1, 1) 🔗

Color модуляції іконки за замовчуванням для Button.


Color icon_pressed_color = Color(1, 1, 1, 1) 🔗

Color модуляції іконки, що використовується при натиску Button.


int align_to_largest_stylebox = 0 🔗

Ця константа діє як логічне значення. Якщо true, мінімальний розмір кнопки та вирівнювання тексту/піктограми завжди базується на найбільших полях поля стилю, інакше він базується на полях поля стилю поточного стану кнопки.


int h_separation = 4 🔗

Горизонтальний простір між значком Button і текстом. Під час використання від’ємні значення розглядатимуться як 0.


int icon_max_width = 0 🔗

Максимально дозволена ширина піктограми Button. Це обмеження застосовується до стандартного розміру піктограми або її розгорнутого розміру, якщо expand_icon має значення true. Висота регулюється відповідно до співвідношення значка. Якщо кнопка має додаткові значки (наприклад, CheckBox), вони також будуть обмежені.


int line_spacing = 0 🔗

Додатковий вертикальний інтервал між рядками (у пікселях), інтервал додається до рядкового спуску. Це значення може бути негативним.


int outline_size = 0 🔗

Розмір контуру тексту.

Примітка. Якщо використовується шрифт із увімкненим FontFile.multichannel_signed_distance_field, для його FontFile.msdf_pixel_range має бути принаймні вдвічі значення outline_size щоб рендеринг контуру виглядав правильно. Інакше контур може здатися обрізаним раніше, ніж передбачалося.


Font font 🔗

Font тексту Button.


int font_size 🔗

Розмір шрифту тексту Button.


Texture2D icon 🔗

Значок за замовчуванням для Button. З’являється, лише якщо icon не призначено.


StyleBox disabled 🔗

StyleBox використовується, коли Button вимкнено.


StyleBox disabled_mirrored 🔗

StyleBox використовується, коли Button вимкнено (для макетів справа наліво).


StyleBox focus 🔗

StyleBox використовується, коли Button у фокусі. focus StyleBox відображається поверх базового StyleBox, тому слід використовувати частково прозорий StyleBox, щоб переконатися, що базовий StyleBox залишається видимим. StyleBox, який представляє контур або підкреслення, добре підходить для цієї мети. Щоб вимкнути візуальний ефект фокусування, призначте ресурс StyleBoxEmpty. Зауважте, що вимкнення візуального ефекту фокусування зашкодить навігації клавіатурою/контролером, тому це не рекомендується з міркувань доступності.


StyleBox hover 🔗

StyleBox використовується, коли Button наводиться.


StyleBox hover_mirrored 🔗

StyleBox використовується, коли на Button наводять курсор (для макетів справа наліво).


StyleBox hover_pressed 🔗

StyleBox використовується, коли Button натискається та наводиться одночасно.


StyleBox hover_pressed_mirrored 🔗

StyleBox використовується, коли Button натиснута та наведена одночасно (для макетів справа наліво).


StyleBox normal 🔗

Типове StyleBox для Button.


StyleBox normal_mirrored 🔗

StyleBox за замовчуванням для Button (для макетів справа наліво).


StyleBox pressed 🔗

StyleBox використовується, коли натискається Button.


StyleBox pressed_mirrored 🔗

StyleBox використовується, коли натискається Button (для макетів справа наліво).