SpinBox
继承: Range
< Control
< CanvasItem
< Node
< Object
An input field for numbers.
描述
SpinBox is a numerical input text field. It allows entering integers and floating-point numbers.
Example: Create a SpinBox, disable its context menu and set its text alignment to right.
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;
See Range
class for more options over the SpinBox.
Note: With the SpinBox's context menu disabled, you can right-click the bottom half of the spinbox to set the value to its minimum, while right-clicking the top half sets the value to its maximum.
Note: SpinBox relies on an underlying LineEdit
node. To theme a SpinBox's background, add theme items for LineEdit
and customize them. The LineEdit
has the SpinBoxInnerLineEdit
theme variation, so that you can give it a distinct appearance from regular LineEdit
s.
Note: If you want to implement drag and drop for the underlying LineEdit
, you can use Control.set_drag_forwarding
on the node returned by get_line_edit
.
属性
HorizontalAlignment | alignment |
float | custom_arrow_step |
bool | editable |
String | prefix |
bool | select_all_on_focus |
SizeFlags | size_flags_vertical |
float | step |
String | suffix |
bool | update_on_text_changed |
方法
void | apply ( ) |
LineEdit | get_line_edit ( ) |
主题属性
属性说明
HorizontalAlignment alignment = 0
void
set_horizontal_alignment ( value: HorizontalAlignment )- HorizontalAlignment get_horizontal_alignment ( )
Changes the alignment of the underlying LineEdit
.
float
custom_arrow_step = 0.0
If not 0
, Range.value
will always be rounded to a multiple of custom_arrow_step
when interacting with the arrow buttons of the SpinBox.
bool
editable = true
If true
, the SpinBox will be editable. Otherwise, it will be read only.
String
prefix = ""
Adds the specified prefix string before the numerical value of the SpinBox.
bool
select_all_on_focus = false
If true
, the SpinBox will select the whole text when the LineEdit
gains focus. Clicking the up and down arrows won't trigger this behavior.
String
suffix = ""
Adds the specified suffix string after the numerical value of the SpinBox.
bool
update_on_text_changed = false
Sets the value of the Range
for this SpinBox when the LineEdit
text is changed instead of submitted. See LineEdit.text_changed
and LineEdit.text_submitted
.
方法说明
void
apply ( )
Applies the current value of this SpinBox.
LineEdit
get_line_edit ( )
Returns the LineEdit
instance from this SpinBox. You can use it to access properties and methods of LineEdit
.
Warning: This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their CanvasItem.visible
property.
主题属性说明
Color
down_disabled_icon_modulate = Color(0.875, 0.875, 0.875, 0.5)
Down button icon modulation color, when the button is disabled.
Color
down_hover_icon_modulate = Color(0.95, 0.95, 0.95, 1)
Down button icon modulation color, when the button is hovered.
Color
down_icon_modulate = Color(0.875, 0.875, 0.875, 1)
Down button icon modulation color.
Color
down_pressed_icon_modulate = Color(0.95, 0.95, 0.95, 1)
Down button icon modulation color, when the button is being pressed.
Color
up_disabled_icon_modulate = Color(0.875, 0.875, 0.875, 0.5)
Up button icon modulation color, when the button is disabled.
Color
up_hover_icon_modulate = Color(0.95, 0.95, 0.95, 1)
Up button icon modulation color, when the button is hovered.
Color
up_icon_modulate = Color(0.875, 0.875, 0.875, 1)
Up button icon modulation color.
Color
up_pressed_icon_modulate = Color(0.95, 0.95, 0.95, 1)
Up button icon modulation color, when the button is being pressed.
int
buttons_vertical_separation = 0
Vertical separation between the up and down buttons.
int
buttons_width = 16
Width of the up and down buttons. If smaller than any icon set on the buttons, the respective icon may overlap neighboring elements. If smaller than 0
, the width is automatically adjusted from the icon size.
int
field_and_buttons_separation = 2
Width of the horizontal separation between the text input field (LineEdit
) and the buttons.
int
set_min_buttons_width_from_icons = 1
If not 0
, the minimum button width corresponds to the widest of all icons set on those buttons, even if buttons_width
is smaller.
Texture2D
down
Down button icon, displayed in the middle of the down (value-decreasing) button.
Texture2D
down_disabled
Down button icon when the button is disabled.
Texture2D
down_hover
Down button icon when the button is hovered.
Texture2D
down_pressed
Down button icon when the button is being pressed.
Texture2D
up
Up button icon, displayed in the middle of the up (value-increasing) button.
Texture2D
up_disabled
Up button icon when the button is disabled.
Texture2D
up_hover
Up button icon when the button is hovered.
Texture2D
up_pressed
Up button icon when the button is being pressed.
Texture2D
updown
Single texture representing both the up and down buttons icons. It is displayed in the middle of the buttons and does not change upon interaction. It is recommended to use individual up
and down
graphics for better usability. This can also be used as additional decoration between the two buttons.
StyleBox
down_background
Background style of the down button.
StyleBox
down_background_disabled
Background style of the down button when disabled.
StyleBox
down_background_hovered
Background style of the down button when hovered.
StyleBox
down_background_pressed
Background style of the down button when being pressed.
StyleBox
field_and_buttons_separator
StyleBox
drawn in the space occupied by the separation between the input field and the buttons.
StyleBox
up_background
Background style of the up button.
StyleBox
up_background_disabled
Background style of the up button when disabled.
StyleBox
up_background_hovered
Background style of the up button when hovered.
StyleBox
up_background_pressed
Background style of the up button when being pressed.
StyleBox
up_down_buttons_separator
StyleBox
drawn in the space occupied by the separation between the up and down buttons.
本方法通常需要用户覆盖才能生效。
本方法无副作用,不会修改该实例的任何成员变量。
本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。
本方法用于构造某个类型。
调用本方法无需实例,可直接使用类名进行调用。
本方法描述的是使用本类型作为左操作数的有效运算符。
这个值是由下列位标志构成位掩码的整数。
无返回值。