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("Привіт, світ!")
public override void _Ready()
{
var bottom = new bottom();
button.Text = "Натисни мене";
button.Pressed += ButtonPressed;
AddChild(кнопка);
}
private void ButtonPressed()
{
GD.Print("Привіт, світ!");
}
Дивіться також BaseButton, який містить загальні властивості та методи, пов’язані з цим вузлом.
Примітка: кнопки не інтерпретують сенсорний ввід і тому не підтримують мультидотик, оскільки емуляція миші може натискати лише одну кнопку в певний момент часу. Використовуйте TouchScreenButton для кнопок, які запускають рух або дії під час гри.
Посібники
Властивості
|
||
|
||
BitField[LineBreakFlag] |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Властивості теми
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Описи властивостей
HorizontalAlignment alignment = 1 🔗
void set_text_alignment(value: HorizontalAlignment)
HorizontalAlignment get_text_alignment()
Політика вирівнювання тексту кнопки.
AutowrapMode autowrap_mode = 0 🔗
void set_autowrap_mode(value: AutowrapMode)
AutowrapMode get_autowrap_mode()
Якщо встановлено щось інше, ніж TextServer.AUTOWRAP_OFF, текст буде загорнуто всередину обмежувального прямокутника вузла.
BitField[LineBreakFlag] autowrap_trim_flags = 128 🔗
void set_autowrap_trim_flags(value: BitField[LineBreakFlag])
BitField[LineBreakFlag] get_autowrap_trim_flags()
Прапорці обрізання пробілів при автоматичному перенесенні. Див. TextServer.BREAK_TRIM_START_EDGE_SPACES та TextServer.BREAK_TRIM_END_EDGE_SPACES для отримання додаткової інформації.
Якщо true, текст, який завеликий для розміщення кнопки, обрізається горизонтально. Якщо false, кнопка завжди буде достатньо широкою, щоб утримувати текст. Текст не обрізається вертикально, і ця властивість не впливає на висоту кнопки.
Якщо ввімкнено, піктограма кнопки розширюватиметься/зменшуватиметься, щоб відповідати розміру кнопки, зберігаючи її аспект. Дивіться також icon_max_width.
Плоскі гудзики не мають декору.
Значок кнопки, якщо текст присутній, значок буде розміщено перед текстом.
Щоб редагувати поля та інтервали піктограми, використовуйте властивість теми h_separation і властивості
content_margin_*використовуваних елементів StyleBox.
HorizontalAlignment icon_alignment = 0 🔗
void set_icon_alignment(value: HorizontalAlignment)
HorizontalAlignment get_icon_alignment()
Визначає, чи піктограма має бути вирівняна горизонтально ліворуч, праворуч чи по центру кнопки. Використовує ті самі константи HorizontalAlignment, що й вирівнювання тексту. Якщо відцентрувати горизонтально та вертикально, текст буде намальовано поверх значка.
Код мови, який використовується для розриву рядків і алгоритмів формування тексту, якщо залишити пустим, замість нього використовується поточна мова.
Текст кнопки, який відображатиметься в області кнопки.
TextDirection text_direction = 0 🔗
void set_text_direction(value: TextDirection)
TextDirection get_text_direction()
Основний напрямок написання тексту.
OverrunBehavior text_overrun_behavior = 0 🔗
void set_text_overrun_behavior(value: OverrunBehavior)
OverrunBehavior get_text_overrun_behavior()
Встановлює поведінку відсікання, коли текст виходить за межі прямокутника, що обмежує вузол.
VerticalAlignment vertical_icon_alignment = 1 🔗
void set_vertical_icon_alignment(value: VerticalAlignment)
VerticalAlignment get_vertical_icon_alignment()
Визначає, чи піктограма має бути вирівняна вертикально вгорі, внизу чи по центру кнопки. Використовує ті самі константи 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, мінімальний розмір кнопки та вирівнювання тексту/піктограми завжди базується на найбільших полях поля стилю, інакше він базується на полях поля стилю поточного стану кнопки.
Горизонтальний простір між значком Button і текстом. Під час використання від’ємні значення розглядатимуться як 0.
Максимально дозволена ширина піктограми Button. Це обмеження застосовується до стандартного розміру піктограми або її розгорнутого розміру, якщо expand_icon має значення true. Висота регулюється відповідно до співвідношення значка. Якщо кнопка має додаткові значки (наприклад, CheckBox), вони також будуть обмежені.
Додатковий вертикальний інтервал між рядками (у пікселях), інтервал додається до рядкового спуску. Це значення може бути негативним.
Розмір контуру тексту.
Примітка. Якщо використовується шрифт із увімкненим FontFile.multichannel_signed_distance_field, для його FontFile.msdf_pixel_range має бути принаймні вдвічі значення outline_size щоб рендеринг контуру виглядав правильно. Інакше контур може здатися обрізаним раніше, ніж передбачалося.
Font тексту Button.
Розмір шрифту тексту Button.
Значок за замовчуванням для Button. З’являється, лише якщо icon не призначено.
StyleBox використовується, коли Button вимкнено.
StyleBox використовується, коли Button вимкнено (для макетів справа наліво).
StyleBox використовується, коли Button у фокусі. focus StyleBox відображається поверх базового StyleBox, тому слід використовувати частково прозорий StyleBox, щоб переконатися, що базовий StyleBox залишається видимим. StyleBox, який представляє контур або підкреслення, добре підходить для цієї мети. Щоб вимкнути візуальний ефект фокусування, призначте ресурс StyleBoxEmpty. Зауважте, що вимкнення візуального ефекту фокусування зашкодить навігації клавіатурою/контролером, тому це не рекомендується з міркувань доступності.
StyleBox використовується, коли Button наводиться.
StyleBox використовується, коли на Button наводять курсор (для макетів справа наліво).
StyleBox використовується, коли Button натискається та наводиться одночасно.
StyleBox hover_pressed_mirrored 🔗
StyleBox використовується, коли Button натиснута та наведена одночасно (для макетів справа наліво).
Типове StyleBox для Button.
StyleBox за замовчуванням для Button (для макетів справа наліво).
StyleBox використовується, коли натискається Button.
StyleBox використовується, коли натискається Button (для макетів справа наліво).