BaseButton
Наследует: Control < CanvasItem < Node < Object
Наследуется от: Button, LinkButton, TextureButton
Абстрактный базовый класс для кнопок графического интерфейса.
Описание
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, кнопка остается нажатой при перемещении курсора за пределы кнопки во время нажатия на нее.
Примечание: Это свойство влияет только на внешний вид кнопки. Сигналы будут выдаваться в тот же момент, независимо от значения этого свойства.
Ярлык (Shortcut), связанный с кнопкой.
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.