SpinBox
Успадковує: Range < Control < CanvasItem < Node < Object
Поле введення для чисел.
Опис
SpinBox – це текстове поле для числового введення. Воно дозволяє вводити цілі числа та числа з плаваючою комою. SpinBox також має кнопки вгору та вниз, натисканням яких можна збільшити або зменшити значення. Значення також можна змінити, перетягнувши мишу вгору або вниз по стрілках SpinBox.
Додатково можна вводити математичні вирази. Вони обчислюються, коли користувач натискає Enter під час редагування текстового поля SpinBox. Для розбору та обчислення виразу використовується клас Expression. Результат виразу потім встановлюється як значення SpinBox. Деякі приклади коректних виразів: 5 + 2 * 3, pow(2, 4) та PI + sin(0.5). Вирази чутливі до регістру.
Приклад: Створіть SpinBox, вимкніть його контекстне меню та встановіть вирівнювання тексту по правому краю.
var spin_box = SpinBox.new()
add_child(spin_box)
var line_edit = spin_box.get_line_edit()
line_edit.context_menu_enabled = false
spin_box.horizontal_alignment = LineEdit.HORIZONTAL_ALIGNMENT_RIGHT
var spinBox = new SpinBox();
AddChild(spinBox);
var lineEdit = spinBox.GetLineEdit();
lineEdit.ContextMenuEnabled = false;
spinBox.AlignHorizontal = LineEdit.HorizontalAlignEnum.Right;
Див. клас Range для отримання додаткових опцій над SpinBox.
Примітка: Якщо контекстне меню SpinBox вимкнено, ви можете клацнути правою кнопкою миші на нижній половині лічильника, щоб встановити мінімальне значення, а клацання правою кнопкою миші на верхній половині встановлює максимальне значення.
Примітка: SpinBox залежить від базового вузла LineEdit. Щоб змінити тему фону SpinBox, додайте елементи теми для LineEdit та налаштуйте їх. LineEdit має варіацію теми SpinBoxInnerLineEdit, щоб ви могли надати йому відмінного вигляду від звичайних LineEdit.
Примітка: Якщо ви хочете реалізувати перетягування для базового LineEdit, ви можете використовувати Control.set_drag_forwarding() на вузлі, що повертається get_line_edit().
Властивості
|
||
|
||
|
||
|
||
|
||
BitField[SizeFlags] |
size_flags_vertical |
|
step |
|
|
|
||
|
Методи
void |
apply() |
Властивості теми
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Описи властивостей
HorizontalAlignment alignment = 0 🔗
void set_horizontal_alignment(value: HorizontalAlignment)
HorizontalAlignment get_horizontal_alignment()
Зміна вирівнювання основи LineEdit.
float custom_arrow_step = 0.0 🔗
Якщо не 0, встановлює крок під час взаємодії з кнопками зі стрілками SpinBox.
Примітка: Range.value все одно буде округлено до кратного Range.step.
Якщо true, то SpinBox буде редаговано. В іншому випадку це буде читати тільки.
Додає вказаний рядок префікса перед числом значення SpinBox.
bool select_all_on_focus = false 🔗
Якщо true, SpinBox вибере весь текст, коли LineEdit отримує фокус. Натискання стрілок вгору і вниз не запускати цю поведінку.
Додавання вказаного рядка suffix після чисельного значення SpinBox.
bool update_on_text_changed = false 🔗
Встановлює значення Range для цього SpinBox, коли текст LineEdit змінюється замість надсилається. Див. LineEdit.text_changed та LineEdit.text_submitted.
Примітка: Якщо встановлено значення true, це заважатиме введенню математичних виразів у SpinBox. SpinBox намагатиметься обчислити вираз під час введення, що означає, що такі символи, як завершальний +, негайно видаляються обчислюваним виразом.
Описи методів
void apply() 🔗
Застосовує поточне значення цього SpinBox. Це еквівалентно натисканню Enter під час редагування LineEdit, що використовується SpinBox. Це призведе до генерації LineEdit.text_submitted та обчислення поточного виразу, що міститься в ньому.
Повернення екземпляра LineEdit з цього SpinBox. Ви можете використовувати його для доступу та методів LineEdit.
Попередження: Це необхідний внутрішній вузол, видаляючи і звільняючи його може призвести до аварії. Якщо ви хочете приховати його або будь-який з своїх дітей, скористайтеся їх CanvasItem.pic.
Описи тематичної нерухомості
Color down_disabled_icon_modulate = Color(0.875, 0.875, 0.875, 0.5) 🔗
Колір модуляції піктограми кнопки вниз, коли кнопка вимкнена.
Color down_hover_icon_modulate = Color(0.95, 0.95, 0.95, 1) 🔗
Колір модуляції значка кнопки вниз, коли на кнопку наведено курсор.
Color down_icon_modulate = Color(0.875, 0.875, 0.875, 1) 🔗
Колір модуляції значка кнопки вниз.
Color down_pressed_icon_modulate = Color(0.95, 0.95, 0.95, 1) 🔗
Колір модуляції піктограми кнопки вниз, коли кнопка натиснута.
Color up_disabled_icon_modulate = Color(0.875, 0.875, 0.875, 0.5) 🔗
Колір модуляції значка кнопки вгору, коли кнопку вимкнено.
Color up_hover_icon_modulate = Color(0.95, 0.95, 0.95, 1) 🔗
Колір модуляції значка кнопки вгору, коли на кнопку наведено курсор.
Color up_icon_modulate = Color(0.875, 0.875, 0.875, 1) 🔗
Колір модуляції значка кнопки вгору.
Color up_pressed_icon_modulate = Color(0.95, 0.95, 0.95, 1) 🔗
Колір модуляції піктограми кнопки вгору, коли кнопка натискається.
int buttons_vertical_separation = 0 🔗
Вертикальна роздільність між кнопками вгору та вниз.
Ширина кнопок вгору та вниз. Якщо менший за будь-який набір піктограм на кнопках, відповідний значок може перекривати сусідні елементи. Якщо менше 0, ширина автоматично регулюється відповідно до розміру значка.
int field_and_buttons_separation = 2 🔗
Ширина горизонтального розділення між полем введення тексту (LineEdit) і кнопками.
int set_min_buttons_width_from_icons = 1 🔗
Якщо не 0, мінімальна ширина кнопки відповідає найширшій із усіх піктограм, установлених на цих кнопках, навіть якщо buttons_width менше.
Піктограма кнопки вниз, відображається посередині кнопки вниз (зменшується значення).
Значок кнопки вниз, коли кнопку вимкнено.
Значок кнопки вниз, коли на кнопку наведено курсор.
Значок кнопки вниз, коли кнопка натиснута.
Піктограма кнопки вгору, відображається посередині кнопки вгору (збільшення значення).
Значок кнопки вгору, коли кнопку вимкнено.
Значок кнопки вгору, коли на кнопку наведено курсор.
Значок кнопки вгору під час натискання кнопки.
Єдина текстура, що представляє значки кнопок «вгору» та «вниз». Вона відображається посередині кнопок і не змінюється під час взаємодії. Якщо призначено коректний значок, він замінить up та down.
Стиль тла кнопки вниз.
StyleBox down_background_disabled 🔗
Стиль тла кнопки вниз, коли вимкнено.
StyleBox down_background_hovered 🔗
Стиль тла кнопки вниз під час наведення.
StyleBox down_background_pressed 🔗
Стиль тла кнопки вниз під час натискання.
StyleBox field_and_buttons_separator 🔗
StyleBox намальовано в місці, яке займає розділення між полем введення та кнопками.
Стиль тла кнопки вгору.
StyleBox up_background_disabled 🔗
Стиль тла кнопки вгору, коли вимкнено.
StyleBox up_background_hovered 🔗
Стиль тла кнопки вгору під час наведення.
StyleBox up_background_pressed 🔗
Стиль тла кнопки вгору під час натискання.
StyleBox up_down_buttons_separator 🔗
StyleBox намальовано в місці, яке займає роздільник між кнопками вгору та вниз.