:github_url: hide .. Generated automatically by doc/tools/make_rst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the SpinBox.xml source instead. .. The source is found in doc/classes or modules//doc_classes. .. _class_SpinBox: SpinBox ======= **Inherits:** :ref:`Range` **<** :ref:`Control` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` Numerical input text field. Description ----------- SpinBox is a numerical input text field. It allows entering integers and floats. \ **Example:**\ .. tabs:: .. code-tab:: gdscript 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 .. code-tab:: csharp var spinBox = new SpinBox(); AddChild(spinBox); var lineEdit = spinBox.GetLineEdit(); lineEdit.ContextMenuEnabled = false; spinBox.AlignHorizontal = LineEdit.HorizontalAlignEnum.Right; The above code will create a ``SpinBox``, disable context menu on it and set the text alignment to right. See :ref:`Range` class for more options over the ``SpinBox``. \ **Note:** ``SpinBox`` relies on an underlying :ref:`LineEdit` node. To theme a ``SpinBox``'s background, add theme items for :ref:`LineEdit` and customize them. Properties ---------- +-------------------------------------------------------------------+------------------------------------------------------------------------------+-----------+ | :ref:`HorizontalAlignment` | :ref:`alignment` | ``0`` | +-------------------------------------------------------------------+------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`editable` | ``true`` | +-------------------------------------------------------------------+------------------------------------------------------------------------------+-----------+ | :ref:`String` | :ref:`prefix` | ``""`` | +-------------------------------------------------------------------+------------------------------------------------------------------------------+-----------+ | :ref:`String` | :ref:`suffix` | ``""`` | +-------------------------------------------------------------------+------------------------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`update_on_text_changed` | ``false`` | +-------------------------------------------------------------------+------------------------------------------------------------------------------+-----------+ Methods ------- +---------------------------------+----------------------------------------------------------------------+ | void | :ref:`apply` **(** **)** | +---------------------------------+----------------------------------------------------------------------+ | :ref:`LineEdit` | :ref:`get_line_edit` **(** **)** | +---------------------------------+----------------------------------------------------------------------+ Theme Properties ---------------- +-----------------------------------+------------------------------------------------+ | :ref:`Texture2D` | :ref:`updown` | +-----------------------------------+------------------------------------------------+ Property Descriptions --------------------- .. _class_SpinBox_property_alignment: - :ref:`HorizontalAlignment` **alignment** +-----------+---------------------------------+ | *Default* | ``0`` | +-----------+---------------------------------+ | *Setter* | set_horizontal_alignment(value) | +-----------+---------------------------------+ | *Getter* | get_horizontal_alignment() | +-----------+---------------------------------+ ---- .. _class_SpinBox_property_editable: - :ref:`bool` **editable** +-----------+---------------------+ | *Default* | ``true`` | +-----------+---------------------+ | *Setter* | set_editable(value) | +-----------+---------------------+ | *Getter* | is_editable() | +-----------+---------------------+ If ``true``, the ``SpinBox`` will be editable. Otherwise, it will be read only. ---- .. _class_SpinBox_property_prefix: - :ref:`String` **prefix** +-----------+-------------------+ | *Default* | ``""`` | +-----------+-------------------+ | *Setter* | set_prefix(value) | +-----------+-------------------+ | *Getter* | get_prefix() | +-----------+-------------------+ Adds the specified ``prefix`` string before the numerical value of the ``SpinBox``. ---- .. _class_SpinBox_property_suffix: - :ref:`String` **suffix** +-----------+-------------------+ | *Default* | ``""`` | +-----------+-------------------+ | *Setter* | set_suffix(value) | +-----------+-------------------+ | *Getter* | get_suffix() | +-----------+-------------------+ Adds the specified ``suffix`` string after the numerical value of the ``SpinBox``. ---- .. _class_SpinBox_property_update_on_text_changed: - :ref:`bool` **update_on_text_changed** +-----------+-----------------------------------+ | *Default* | ``false`` | +-----------+-----------------------------------+ | *Setter* | set_update_on_text_changed(value) | +-----------+-----------------------------------+ | *Getter* | get_update_on_text_changed() | +-----------+-----------------------------------+ Sets the value of the :ref:`Range` for this ``SpinBox`` when the :ref:`LineEdit` text is *changed* instead of *submitted*. See :ref:`LineEdit.text_changed` and :ref:`LineEdit.text_submitted`. Method Descriptions ------------------- .. _class_SpinBox_method_apply: - void **apply** **(** **)** Applies the current value of this ``SpinBox``. ---- .. _class_SpinBox_method_get_line_edit: - :ref:`LineEdit` **get_line_edit** **(** **)** Returns the :ref:`LineEdit` instance from this ``SpinBox``. You can use it to access properties and methods of :ref:`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 :ref:`CanvasItem.visible` property. Theme Property Descriptions --------------------------- .. _class_SpinBox_theme_icon_updown: - :ref:`Texture2D` **updown** Sets a custom :ref:`Texture2D` for up and down arrows of the ``SpinBox``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`