mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-02 21:48:52 +03:00
315 lines
15 KiB
ReStructuredText
315 lines
15 KiB
ReStructuredText
:github_url: hide
|
|
|
|
.. _class_TextureButton:
|
|
|
|
TextureButton
|
|
=============
|
|
|
|
**Hereda:** :ref:`BaseButton<class_BaseButton>` **<** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
|
|
|
Botón basado en la textura. Soporta los estados de Presionado, Cursor Encima, Desactivado y Enfocado.
|
|
|
|
.. rst-class:: classref-introduction-group
|
|
|
|
Descripción
|
|
----------------------
|
|
|
|
**TextureButton** tiene la misma funcionalidad que :ref:`Button<class_Button>`, excepto que utiliza sprites en lugar del recurso :ref:`Theme<class_Theme>` de Godot. Es más rápido de crear, pero no soporta la localización como los :ref:`Control<class_Control>`\ s más complejos.
|
|
|
|
Véase también :ref:`BaseButton<class_BaseButton>`, que contiene propiedades y métodos comunes asociados a este nodo.
|
|
|
|
\ **Nota:** Se recomienda establecer una textura para el estado "normal" (:ref:`texture_normal<class_TextureButton_property_texture_normal>`). Si no se establece :ref:`texture_normal<class_TextureButton_property_texture_normal>`, **TextureButton** seguirá recibiendo eventos de entrada y se podrá hacer clic en él, pero el usuario no podrá verlo a menos que active otro de sus estados con una textura asignada (por ejemplo, pasar el ratón por encima para mostrar :ref:`texture_hover<class_TextureButton_property_texture_hover>`).
|
|
|
|
.. rst-class:: classref-introduction-group
|
|
|
|
Tutoriales
|
|
--------------------
|
|
|
|
- `Demo de Vóxeles en 3D <https://godotengine.org/asset-library/asset/2755>`__
|
|
|
|
.. rst-class:: classref-reftable-group
|
|
|
|
Propiedades
|
|
----------------------
|
|
|
|
.. table::
|
|
:widths: auto
|
|
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`bool<class_bool>` | :ref:`flip_h<class_TextureButton_property_flip_h>` | ``false`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`bool<class_bool>` | :ref:`flip_v<class_TextureButton_property_flip_v>` | ``false`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`bool<class_bool>` | :ref:`ignore_texture_size<class_TextureButton_property_ignore_texture_size>` | ``false`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`StretchMode<enum_TextureButton_StretchMode>` | :ref:`stretch_mode<class_TextureButton_property_stretch_mode>` | ``2`` |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`BitMap<class_BitMap>` | :ref:`texture_click_mask<class_TextureButton_property_texture_click_mask>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture2D<class_Texture2D>` | :ref:`texture_disabled<class_TextureButton_property_texture_disabled>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture2D<class_Texture2D>` | :ref:`texture_focused<class_TextureButton_property_texture_focused>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture2D<class_Texture2D>` | :ref:`texture_hover<class_TextureButton_property_texture_hover>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture2D<class_Texture2D>` | :ref:`texture_normal<class_TextureButton_property_texture_normal>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture2D<class_Texture2D>` | :ref:`texture_pressed<class_TextureButton_property_texture_pressed>` | |
|
|
+----------------------------------------------------+------------------------------------------------------------------------------+-----------+
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Enumeraciones
|
|
--------------------------
|
|
|
|
.. _enum_TextureButton_StretchMode:
|
|
|
|
.. rst-class:: classref-enumeration
|
|
|
|
enum **StretchMode**: :ref:`🔗<enum_TextureButton_StretchMode>`
|
|
|
|
.. _class_TextureButton_constant_STRETCH_SCALE:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_SCALE** = ``0``
|
|
|
|
Escala para ajustarse al rectángulo delimitador del nodo.
|
|
|
|
.. _class_TextureButton_constant_STRETCH_TILE:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_TILE** = ``1``
|
|
|
|
Tile dentro del rectángulo delimitador del nodo.
|
|
|
|
.. _class_TextureButton_constant_STRETCH_KEEP:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_KEEP** = ``2``
|
|
|
|
La textura mantiene su tamaño original y se mantiene en la esquina superior izquierda del rectángulo delimitador.
|
|
|
|
.. _class_TextureButton_constant_STRETCH_KEEP_CENTERED:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_KEEP_CENTERED** = ``3``
|
|
|
|
La textura mantiene su tamaño original y permanece centrado en el rectángulo delimitador del nodo.
|
|
|
|
.. _class_TextureButton_constant_STRETCH_KEEP_ASPECT:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_KEEP_ASPECT** = ``4``
|
|
|
|
Escala la textura para que se ajuste al rectángulo delimitador del nodo, pero mantén la relación de aspecto de la textura.
|
|
|
|
.. _class_TextureButton_constant_STRETCH_KEEP_ASPECT_CENTERED:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_KEEP_ASPECT_CENTERED** = ``5``
|
|
|
|
Escala la textura para que se ajuste al rectángulo delimitador del nodo, la centra y mantiene su relación de aspecto.
|
|
|
|
.. _class_TextureButton_constant_STRETCH_KEEP_ASPECT_COVERED:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **STRETCH_KEEP_ASPECT_COVERED** = ``6``
|
|
|
|
Escala la textura para que el lado más corto se ajuste al rectángulo delimitador. El otro lado se ajusta a los límites del nodo.
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Descripciones de Propiedades
|
|
--------------------------------------------------------
|
|
|
|
.. _class_TextureButton_property_flip_h:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **flip_h** = ``false`` :ref:`🔗<class_TextureButton_property_flip_h>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_flip_h**\ (\ value\: :ref:`bool<class_bool>`\ )
|
|
- :ref:`bool<class_bool>` **is_flipped_h**\ (\ )
|
|
|
|
Si es ``true``, la textura se voltea horizontalmente.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_flip_v:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **flip_v** = ``false`` :ref:`🔗<class_TextureButton_property_flip_v>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_flip_v**\ (\ value\: :ref:`bool<class_bool>`\ )
|
|
- :ref:`bool<class_bool>` **is_flipped_v**\ (\ )
|
|
|
|
Si es ``true``, la textura se voltea verticalmente.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_ignore_texture_size:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **ignore_texture_size** = ``false`` :ref:`🔗<class_TextureButton_property_ignore_texture_size>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_ignore_texture_size**\ (\ value\: :ref:`bool<class_bool>`\ )
|
|
- :ref:`bool<class_bool>` **get_ignore_texture_size**\ (\ )
|
|
|
|
Si es ``true``, el tamaño de la textura no se considerará para el cálculo del tamaño mínimo, por lo que el **TextureButton** puede ser reducido más allá del tamaño de la textura.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_stretch_mode:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`StretchMode<enum_TextureButton_StretchMode>` **stretch_mode** = ``2`` :ref:`🔗<class_TextureButton_property_stretch_mode>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_stretch_mode**\ (\ value\: :ref:`StretchMode<enum_TextureButton_StretchMode>`\ )
|
|
- :ref:`StretchMode<enum_TextureButton_StretchMode>` **get_stretch_mode**\ (\ )
|
|
|
|
Controla el comportamiento de la textura al redimensionar el rectángulo delimitador del nodo. Consulta las constantes :ref:`StretchMode<enum_TextureButton_StretchMode>` para ver las opciones disponibles.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_texture_click_mask:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`BitMap<class_BitMap>` **texture_click_mask** :ref:`🔗<class_TextureButton_property_texture_click_mask>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_click_mask**\ (\ value\: :ref:`BitMap<class_BitMap>`\ )
|
|
- :ref:`BitMap<class_BitMap>` **get_click_mask**\ (\ )
|
|
|
|
Imagen en blanco y negro puro :ref:`BitMap<class_BitMap>` para usar en la detección de clics. En la máscara, los píxeles blancos representan el área donde se puede hacer clic en el botón. Úsalo para crear botones con formas curvas.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_texture_disabled:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture2D<class_Texture2D>` **texture_disabled** :ref:`🔗<class_TextureButton_property_texture_disabled>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_texture_disabled**\ (\ value\: :ref:`Texture2D<class_Texture2D>`\ )
|
|
- :ref:`Texture2D<class_Texture2D>` **get_texture_disabled**\ (\ )
|
|
|
|
Textura a mostrar cuando el nodo está deshabilitado. Véase :ref:`BaseButton.disabled<class_BaseButton_property_disabled>`. Si no se asigna, el **TextureButton** muestra :ref:`texture_normal<class_TextureButton_property_texture_normal>` en su lugar.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_texture_focused:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture2D<class_Texture2D>` **texture_focused** :ref:`🔗<class_TextureButton_property_texture_focused>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_texture_focused**\ (\ value\: :ref:`Texture2D<class_Texture2D>`\ )
|
|
- :ref:`Texture2D<class_Texture2D>` **get_texture_focused**\ (\ )
|
|
|
|
Textura a *superponer sobre la textura base* cuando el nodo tiene el foco del ratón o del teclado. Debido a que :ref:`texture_focused<class_TextureButton_property_texture_focused>` se muestra encima de la textura base, se debe usar una textura parcialmente transparente para asegurar que la textura base permanezca visible. Una textura que represente un contorno o un subrayado funciona bien para este propósito. Para desactivar el efecto visual de foco, asigna una textura totalmente transparente de cualquier tamaño. Ten en cuenta que desactivar el efecto visual de foco perjudicará la usabilidad de la navegación con teclado/controlador, por lo que no se recomienda por razones de accesibilidad.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_texture_hover:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture2D<class_Texture2D>` **texture_hover** :ref:`🔗<class_TextureButton_property_texture_hover>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_texture_hover**\ (\ value\: :ref:`Texture2D<class_Texture2D>`\ )
|
|
- :ref:`Texture2D<class_Texture2D>` **get_texture_hover**\ (\ )
|
|
|
|
Textura a mostrar cuando el ratón se cierne sobre el nodo. Si no se asigna, el **TextureButton** muestra :ref:`texture_normal<class_TextureButton_property_texture_normal>` en su lugar cuando se cierne sobre él.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_texture_normal:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture2D<class_Texture2D>` **texture_normal** :ref:`🔗<class_TextureButton_property_texture_normal>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_texture_normal**\ (\ value\: :ref:`Texture2D<class_Texture2D>`\ )
|
|
- :ref:`Texture2D<class_Texture2D>` **get_texture_normal**\ (\ )
|
|
|
|
Textura a mostrar por defecto, cuando el nodo **no** está en estado deshabilitado, cernido o presionado. Esta textura también se muestra en el estado de foco, con :ref:`texture_focused<class_TextureButton_property_texture_focused>` dibujado encima.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TextureButton_property_texture_pressed:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture2D<class_Texture2D>` **texture_pressed** :ref:`🔗<class_TextureButton_property_texture_pressed>`
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- |void| **set_texture_pressed**\ (\ value\: :ref:`Texture2D<class_Texture2D>`\ )
|
|
- :ref:`Texture2D<class_Texture2D>` **get_texture_pressed**\ (\ )
|
|
|
|
Textura a mostrar al presionar el botón del ratón sobre el nodo, si el nodo tiene el foco del teclado y el jugador presiona la tecla Intro, o si el jugador presiona la tecla :ref:`BaseButton.shortcut<class_BaseButton_property_shortcut>`. Si no se asigna, el **TextureButton** muestra :ref:`texture_hover<class_TextureButton_property_texture_hover>` en su lugar cuando se presiona.
|
|
|
|
.. |virtual| replace:: :abbr:`virtual (Normalmente, este método debería ser sobreescrito por el usuario para que tenga algún efecto.)`
|
|
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
|
.. |const| replace:: :abbr:`const (Este método no tiene efectos secundarios. No modifica ninguna de las variables miembro de la instancia.)`
|
|
.. |vararg| replace:: :abbr:`vararg (Este método permite agregar cualquier número de argumentos después de los descritos aquí.)`
|
|
.. |constructor| replace:: :abbr:`constructor (Este método se utiliza para construir un tipo.)`
|
|
.. |static| replace:: :abbr:`static (Este método no necesita una instancia para ser llamado, por lo que puede llamarse directamente utilizando el nombre de la clase.)`
|
|
.. |operator| replace:: :abbr:`operator (Este método describe un operador válido para usar con este tipo como operando izquierdo.)`
|
|
.. |bitfield| replace:: :abbr:`BitField (Este valor es un entero compuesto como una máscara de bits de las siguientes banderas.)`
|
|
.. |void| replace:: :abbr:`void (Sin valor de retorno.)`
|