Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Button

Hereda: BaseButton < Control < CanvasItem < Node < Object

Heredado por: CheckBox, CheckButton, ColorPickerButton, MenuButton, OptionButton

Un botón temático que puede contener texto y un icono.

Descripción

Button is the standard themed button. It can contain text and an icon, and it will display them according to the current Theme.

Example: Create a button and connect a method that will be called when the button is pressed:

func _ready():
    var button = Button.new()
    button.text = "Click me"
    button.pressed.connect(_button_pressed)
    add_child(button)

func _button_pressed():
    print("Hello world!")

See also BaseButton which contains common properties and methods associated with this node.

Note: Buttons support multitouch via touch input, allowing multiple buttons to be pressed at the same time. Otherwise, mouse input is used, limiting interaction to one button press at a time.

Tutoriales

Propiedades

HorizontalAlignment

alignment

1

AutowrapMode

autowrap_mode

0

BitField[LineBreakFlag]

autowrap_trim_flags

128

bool

clip_text

false

bool

expand_icon

false

bool

flat

false

Texture2D

icon

HorizontalAlignment

icon_alignment

0

String

language

""

String

text

""

TextDirection

text_direction

0

OverrunBehavior

text_overrun_behavior

0

VerticalAlignment

vertical_icon_alignment

1

Propiedades del Tema

Color

font_color

Color(0.875, 0.875, 0.875, 1)

Color

font_disabled_color

Color(0.875, 0.875, 0.875, 0.5)

Color

font_focus_color

Color(0.95, 0.95, 0.95, 1)

Color

font_hover_color

Color(0.95, 0.95, 0.95, 1)

Color

font_hover_pressed_color

Color(1, 1, 1, 1)

Color

font_outline_color

Color(0, 0, 0, 1)

Color

font_pressed_color

Color(1, 1, 1, 1)

Color

icon_disabled_color

Color(1, 1, 1, 0.4)

Color

icon_focus_color

Color(1, 1, 1, 1)

Color

icon_hover_color

Color(1, 1, 1, 1)

Color

icon_hover_pressed_color

Color(1, 1, 1, 1)

Color

icon_normal_color

Color(1, 1, 1, 1)

Color

icon_pressed_color

Color(1, 1, 1, 1)

int

align_to_largest_stylebox

0

int

h_separation

4

int

icon_max_width

0

int

line_spacing

0

int

outline_size

0

Font

font

int

font_size

Texture2D

icon

StyleBox

disabled

StyleBox

disabled_mirrored

StyleBox

focus

StyleBox

hover

StyleBox

hover_mirrored

StyleBox

hover_pressed

StyleBox

hover_pressed_mirrored

StyleBox

normal

StyleBox

normal_mirrored

StyleBox

pressed

StyleBox

pressed_mirrored


Descripciones de Propiedades

HorizontalAlignment alignment = 1 🔗

Política de alineación del texto del botón.


AutowrapMode autowrap_mode = 0 🔗

Si se establece en un valor distinto de TextServer.AUTOWRAP_OFF, el texto se ajusta dentro del rectángulo delimitador del nodo.


BitField[LineBreakFlag] autowrap_trim_flags = 128 🔗

Flags de recorte de espacio de ajuste automático. Véase TextServer.BREAK_TRIM_START_EDGE_SPACES y TextServer.BREAK_TRIM_END_EDGE_SPACES para más información.


bool clip_text = false 🔗

  • void set_clip_text(value: bool)

  • bool get_clip_text()

Si es true, el texto que es demasiado grande para caber en el botón se recorta horizontalmente. Si es false, el botón siempre será lo suficientemente ancho como para contener el texto. El texto no se recorta verticalmente, y la altura del botón no se ve afectada por esta propiedad.


bool expand_icon = false 🔗

  • void set_expand_icon(value: bool)

  • bool is_expand_icon()

Cuando está activado, el icono del botón se expandirá o encogerá para adaptarse al tamaño del botón, manteniendo su aspecto. Véase también icon_max_width.


bool flat = false 🔗

  • void set_flat(value: bool)

  • bool is_flat()

Los botones planos no muestran decoración.


Texture2D icon 🔗

Icono del botón, si hay texto presente, el icono se colocará antes del texto.

Para editar el margen y el espaciado del icono, usa la propiedad del tema h_separation y las propiedades content_margin_* de los StyleBox usados.


HorizontalAlignment icon_alignment = 0 🔗

Especifica si el icono debe estar alineado horizontalmente a la izquierda, a la derecha o al centro de un botón. Utiliza las mismas constantes de HorizontalAlignment que la alineación del texto. Si está centrado horizontal y verticalmente, el texto se dibujará encima del icono.


String language = "" 🔗

Language code used for line-breaking and text shaping algorithms. If left empty, the current locale is used instead.


String text = "" 🔗

El texto del botón que se mostrará dentro del área del botón.


TextDirection text_direction = 0 🔗

Dirección base de escritura del texto.


OverrunBehavior text_overrun_behavior = 0 🔗

Sets the clipping behavior when the text exceeds the node's bounding rectangle.


VerticalAlignment vertical_icon_alignment = 1 🔗

Especifica si el icono debe alinearse verticalmente a la parte superior, inferior o al centro de un botón. Utiliza las mismas constantes de VerticalAlignment que la alineación del texto. Si está centrado horizontal y verticalmente, el texto se dibujará encima del icono.


Descripciones de las propiedades del tema

Color font_color = Color(0.875, 0.875, 0.875, 1) 🔗

Color del texto predeterminado del Button.


Color font_disabled_color = Color(0.875, 0.875, 0.875, 0.5) 🔗

Color del texto utilizado cuando el Button está desactivado.


Color font_focus_color = Color(0.95, 0.95, 0.95, 1) 🔗

El Color del texto que se usa cuando el Button está enfocado. Solo reemplaza el color normal del texto del botón. Los estados desactivado, flotante y presionado tienen prioridad sobre este color.


Color font_hover_color = Color(0.95, 0.95, 0.95, 1) 🔗

Color del texto usado cuando el Button tiene encima el cursor.


Color font_hover_pressed_color = Color(1, 1, 1, 1) 🔗

Color del texto utilizado cuando se está pasando el ratón y pulsando el Button.


Color font_outline_color = Color(0, 0, 0, 1) 🔗

El tinte del contorno del texto del Button.


Color font_pressed_color = Color(1, 1, 1, 1) 🔗

Color del texto utilizado cuando se pulsa el Button.


Color icon_disabled_color = Color(1, 1, 1, 0.4) 🔗

Color de modulación del icono que se usa cuando el Button está desactivado.


Color icon_focus_color = Color(1, 1, 1, 1) 🔗

Color de modulación del icono que se usa cuando el Button está enfocado. Solo reemplaza el color de modulación normal del botón. Los estados desactivado, flotante y presionado tienen prioridad sobre este color.


Color icon_hover_color = Color(1, 1, 1, 1) 🔗

Color de modulación del icono que se usa cuando se está pasando el ratón por encima del Button.


Color icon_hover_pressed_color = Color(1, 1, 1, 1) 🔗

Color de modulación del icono que se usa cuando se está pasando el ratón por encima del Button y se está pulsando.


Color icon_normal_color = Color(1, 1, 1, 1) 🔗

Color de modulación del icono predeterminado del Button.


Color icon_pressed_color = Color(1, 1, 1, 1) 🔗

Color de modulación del icono usado cuando se está pulsando el Button.


int align_to_largest_stylebox = 0 🔗

This constant acts as a boolean. If true, the minimum size of the button and text/icon alignment is always based on the largest stylebox margins, otherwise it's based on the current button state stylebox margins.


int h_separation = 4 🔗

El espacio horizontal entre el icono y el texto del Button. Los valores negativos se tratarán como 0 cuando se utilicen.


int icon_max_width = 0 🔗

El ancho máximo permitido para el icono del Button. Este límite se aplica sobre el tamaño predeterminado del icono, o sobre su tamaño expandido si expand_icon es true. La altura se ajusta según la relación de aspecto (ratio) del icono. Si el botón tiene iconos adicionales (por ejemplo, CheckBox), estos también se verán limitados.


int line_spacing = 0 🔗

Espacio vertical adicional entre líneas (en píxeles); el espacio se añade al descenso de la línea (line descent). Este valor puede ser negativo.


int outline_size = 0 🔗

El tamaño del contorno del texto.

Note: Si se usa una fuente con FontFile.multichannel_signed_distance_field habilitado, su FontFile.msdf_pixel_range debe establecerse en al menos el doble del valor de outline_size para que el renderizado del contorno se vea correctamente. De lo contrario, el contorno puede parecer cortado antes de lo previsto.


Font font 🔗

Font del texto del Button.


int font_size 🔗

Tamaño de fuente del texto del Button.


Texture2D icon 🔗

Icono predeterminado para el Button. Aparece solo si icon no está asignado.


StyleBox disabled 🔗

StyleBox usado cuando el Button está desactivado.


StyleBox disabled_mirrored 🔗

StyleBox usado cuando el Button está desactivado (para diseños de derecha a izquierda).


StyleBox focus 🔗

StyleBox usado cuando el Button está enfocado. El StyleBox focus se muestra sobre el StyleBox base, por lo que se debe usar un StyleBox parcialmente transparente para asegurar que el StyleBox base permanezca visible. Un StyleBox que represente un contorno o un subrayado funciona bien para este propósito. Para desactivar el efecto visual de enfoque, asigna un recurso StyleBoxEmpty. Ten en cuenta que desactivar el efecto visual de enfoque perjudicará la usabilidad de la navegación con teclado/mando, por lo que no se recomienda por razones de accesibilidad.


StyleBox hover 🔗

StyleBox que se usa cuando el Button tiene encima el cursor.


StyleBox hover_mirrored 🔗

StyleBox utilizado cuando el puntero está sobre el Button (para diseños de derecha a izquierda).


StyleBox hover_pressed 🔗

StyleBox utilizado cuando se está pulsando el Button y el puntero está encima a la vez.


StyleBox hover_pressed_mirrored 🔗

StyleBox utilizado cuando se está pulsando el Button y el puntero está encima a la vez (para diseños de derecha a izquierda).


StyleBox normal 🔗

StyleBox por defecto para el Button.


StyleBox normal_mirrored 🔗

El StyleBox predeterminado para el Button (para diseños de derecha a izquierda).


StyleBox pressed 🔗

StyleBox que se usa cuando se presiona el Button.


StyleBox pressed_mirrored 🔗

StyleBox used when the Button is being pressed (for right-to-left layouts).