BaseButton
Успадковує: Control < CanvasItem < Node < Object
Успадковано від: Button, LinkButton, TextureButton
Абстрактний базовий клас для кнопок GUI.
Опис
BaseButton — це абстрактний базовий клас для кнопок GUI. Сам по собі нічого не відображає.
Властивості
|
||
BitField[MouseButtonMask] |
|
|
|
||
|
||
focus_mode |
|
|
|
||
|
||
|
||
|
Методи
void |
_pressed() virtual |
void |
|
get_draw_mode() const |
|
is_hovered() const |
|
void |
set_pressed_no_signal(pressed: bool) |
Сигнали
button_down() 🔗
Випромінюється, коли кнопку починають утримувати.
button_up() 🔗
Випромінюється, коли кнопка перестає бути натиснутою.
pressed() 🔗
Випромінюється під час перемикання або натискання кнопки. Це на button_down, якщо action_mode ACTION_MODE_BUTTON_PRESS і на button_up інакше.
Якщо вам потрібно знати стан натиснутої кнопки (і toggle_mode активний), замість цього використовуйте toggled.
Видається, коли кнопку щойно перемикали між натиснутим і нормальним станами (лише якщо toggle_mode активний). Новий стан міститься в аргументі toggled_on.
Переліки
enum DrawMode: 🔗
DrawMode DRAW_NORMAL = 0
Нормальний стан (тобто не натиснуті, не наведені, не перемикаються та ввімкнені) кнопок.
DrawMode DRAW_PRESSED = 1
Стан кнопок натиснуті.
DrawMode DRAW_HOVER = 2
Стан кнопок наведено.
DrawMode DRAW_DISABLED = 3
Стан кнопок вимкнено.
DrawMode DRAW_HOVER_PRESSED = 4
Стан кнопок як наведені, так і натиснуті.
enum ActionMode: 🔗
ActionMode ACTION_MODE_BUTTON_PRESS = 0
Потрібно лише натиснути, щоб вважати кнопку натиснутою.
ActionMode ACTION_MODE_BUTTON_RELEASE = 1
Вимагайте натискання та подальшого відпускання, перш ніж вважати кнопку натиснутою.
Описи властивостей
ActionMode action_mode = 1 🔗
void set_action_mode(value: ActionMode)
ActionMode get_action_mode()
Визначає, коли кнопка вважається натиснутою.
ButtonGroup button_group 🔗
void set_button_group(value: ButtonGroup)
ButtonGroup get_button_group()
ButtonGroup, пов’язаний із кнопкою. Не плутати з групами вузлів.
Примітка: Кнопку буде налаштовано як перемикач, якщо їй призначено ButtonGroup.
BitField[MouseButtonMask] button_mask = 1 🔗
void set_button_mask(value: BitField[MouseButtonMask])
BitField[MouseButtonMask] get_button_mask()
Бінарна маска, щоб вибрати, на які кнопки миші ця кнопка реагуватиме.
Щоб дозволити клацання як лівою, так і правою кнопкою миші, використовуйте
MOUSE_BUTTON_MASK_LEFT | MOUSE_BUTTON_MASK_RIGHT.
Якщо true, кнопка натиснута. Означає, що кнопку натиснуто або перемикається (якщо toggle_mode активний). Працює, лише якщо toggle_mode має значення true.
Примітка: Зміна значення button_pressed призведе до випромінювання toggled. Якщо ви хочете змінити натиснутий стан без випромінювання цього сигналу, використовуйте set_pressed_no_signal().
Якщо true, кнопка вимкнена і її не можна натиснути або перемкнути.
Примітка: Якщо кнопка вимкнена під час утримання, буде випущено button_up.
bool keep_pressed_outside = false 🔗
Якщо true, кнопка залишається натиснутою під час переміщення курсору за межі кнопки під час її натискання.
Примітка: Ця властивість впливає лише на візуальний вигляд кнопки. Сигнали будуть випромінюватися в той самий момент, незалежно від значення цієї властивості.
Ярлик, пов’язаний із кнопкою.
bool shortcut_feedback = true 🔗
Якщо true, кнопка підсвічується на короткий проміжок часу, коли її ярлик активовано. Якщо false і toggle_mode має значення false, ярлик активується без візуального зворотного зв’язку.
bool shortcut_in_tooltip = true 🔗
Якщо true, кнопка додасть інформацію про свій ярлик у спливаючу підказку.
Примітка. Ця властивість нічого не робить, якщо елемент керування підказкою налаштовано за допомогою Control._make_custom_tooltip().
Якщо true, кнопка перебуває в режимі перемикання. Перемикає стан кнопки між натиснутим і не натиснутим щоразу, коли її область клацає.
Описи методів
void _pressed() virtual 🔗
Викликається при натисканні кнопки. Якщо вам потрібно знати стан натиснутої кнопки (і toggle_mode активний), замість цього використовуйте _toggled().
void _toggled(toggled_on: bool) virtual 🔗
Викликається, коли кнопка перемикається (тільки якщо toggle_mode активний).
DrawMode get_draw_mode() const 🔗
Повертає візуальний стан, використаний для малювання кнопки. Це корисно головним чином під час реалізації вашого власного коду малювання шляхом заміни _draw() або підключення до сигналу "draw". Візуальний стан кнопки визначається переліком DrawMode.
Повертає true, якщо миша натиснула кнопку, але ще не залишила її.
void set_pressed_no_signal(pressed: bool) 🔗
Змінює button_pressed стан кнопки, не випромінюючи toggled. Використовуйте, коли ви просто хочете змінити стан кнопки без надсилання натиснутої події (наприклад, під час ініціалізації сцени). Працює, лише якщо toggle_mode має значення true.
Примітка. Цей метод не скасовує натискання інших кнопок у button_group.