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

Hérite de : BaseButton < Control < CanvasItem < Node < Object

Hérité par : CheckBox, CheckButton, ColorPickerButton, MenuButton, OptionButton

Un bouton à thème qui peut contenir du texte et une icône.

Description

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.

Tutoriels

Propriétés

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

Propriétés du thème

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


Descriptions des propriétés

HorizontalAlignment alignment = 1 🔗

Politique d'alignement du texte pour le texte du bouton.


AutowrapMode autowrap_mode = 0 🔗

Si défini à autre chose que TextServer.AUTOWRAP_OFF, le texte fait automatiquement des retours à la ligne dans le rectangle délimitant du nœud.


BitField[LineBreakFlag] autowrap_trim_flags = 128 🔗

Drapeaux de trimming des espaces en autowrap. Voir TextServer.BREAK_TRIM_START_EDGE_SPACES et TextServer.BREAK_TRIM_END_EDGE_SPACES pour plus d'informations.


bool clip_text = false 🔗

  • void set_clip_text(value: bool)

  • bool get_clip_text()

Si true, le texte trop grand pour correspondre au bouton est coupé horizontalement. Si false, le bouton sera toujours assez large pour contenir le texte. Le texte n'est pas coupé verticalement, et la hauteur du bouton n'est pas affectée par cette propriété.


bool expand_icon = false 🔗

  • void set_expand_icon(value: bool)

  • bool is_expand_icon()

Lors qu’activé, l'icône du bouton s'étendra/rétrécira pour correspondre à la taille du bouton tout en gardant son aspect. Voir aussi icon_max_width.


bool flat = false 🔗

  • void set_flat(value: bool)

  • bool is_flat()

Les boutons plats n’affichent pas de décoration.


Texture2D icon 🔗

L'icône du bouton, si du texte est présent, l'icône sera placée avant le texte.

Pour modifier la marge et l'espacement de l'icône, utilisez la propriété de thème h_separation pour le Button et les propriétés content_margin_* des StyleBoxs utilisées.


HorizontalAlignment icon_alignment = 0 🔗

Spécifie si l'icône doit être alignée horizontalement sur la gauche, la droite ou au centre d'un bouton. Utilisez les mêmes constantes HorizontalAlignment que pour l'alignement du texte. Si centré horizontalement et verticalement, le texte sera dessiné sur l'icône.


String language = "" 🔗

Code de langue utilisé pour les algorithmes de retour à la ligne et de "text shaping". Si laissé vide, la langue actuelle est utilisée à la place.


String text = "" 🔗

Le texte du bouton qui sera affiché à l'intérieur de l'aire du bouton.


TextDirection text_direction = 0 🔗

Direction d'écriture du texte de base.


OverrunBehavior text_overrun_behavior = 0 🔗

Définit le comportement de coupure lorsque le texte dépasse le rectangle délimitant du nœud.


VerticalAlignment vertical_icon_alignment = 1 🔗

Spécifie si l'icône doit être alignée verticalement sur le haut, le bas ou le centre d'un bouton. Utilise les mêmes constantes VerticalAlignment que pour l'alignement du texte. Si l'icône est centrée horizontalement et verticalement, elle sera affichée sur le texte.


Descriptions des propriétés du thème

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

La Color du texte par défaut du Button.


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

La Color du texte utilisée quand le Button est désactivé.


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

La Color du texte utilisée lorsque le Button a le focus. Ne fait que remplacer la couleur normale du texte du bouton. Les couleurs définies pour les états désactivé, survolé et pressé sont prioritaires sur cette couleur.


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

La Color du texte utilisée quand le Button est survolé.


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

La Color du texte utilisée quand le Button est survolé et appuyé.


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

La Color du contour du texte du Button.


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

La Color du texte utilisée quand le Button est appuyé.


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

Color de modulation de l'icône utilisée quand le Button est désactivé.


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

Color de modulation de l'icône utilisée quand le Button a le focus. Ne fait que remplacer la couleur de modulation normale du bouton. Les couleurs définies pour les états désactivé, survolé et appuyé sont prioritaires sur cette couleur.


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

Color de modulation de l'icône utilisée quand le Button est survolé.


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

Color de modulation de l'icône utilisée quand le Button est survolé et appuyé.


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

Color de modulation de l'icône du Button par défaut.


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

Color de modulation de l'icône utilisée quand le Button est appuyé.


int align_to_largest_stylebox = 0 🔗

Cette constante agit comme un booléen. Si true, la taille minimale du bouton et l'alignement du texte/icône sont toujours basés sur les marges de la Stylebox la plus grande, sinon ils sont basés sur les marges de la Stylebox de l'état du bouton actuel.


int h_separation = 4 🔗

L'espacement horizontal entre l'icône et le texte du Button. Les valeurs négatives seront traitées comme 0 lorsque utilisées.


int icon_max_width = 0 🔗

La largeur maximale autorisée de l'icône du Button. Cette limite est appliquée en plus de la taille par défaut de l'icône, ou sa taille élargie si expand_icon vaut true. La hauteur est ajustée selon le rapport d'aspect de l'icône. Si le bouton a des icônes supplémentaires (par exemple CheckBox), elles seront également limitées.


int line_spacing = 0 🔗

Espacement vertical supplémentaire entre les lignes (en pixels), l'espacement est ajouté à la descente de la ligne. Cette valeur peut être négative.


int outline_size = 0 🔗

La taille du contour du texte.

Note : Si vous utilisez une police avec FontFile.multichannel_signed_distance_field activé, sa propriété FontFile.msdf_pixel_range doit être définie à au moins deux fois la valeur de outline_size pour que le rendu des contours soit correct. Sinon, le contour peut sembler coupé plus tôt que prévu.


Font font 🔗

Font du texte du Button.


int font_size 🔗

La taille de police du texte du Button.


Texture2D icon 🔗

Icône par défaut pour le Button. N'apparaît que si icon n'est pas affectée.


StyleBox disabled 🔗

La StyleBox utilisée quand le Button est désactivé.


StyleBox disabled_mirrored 🔗

StyleBox utilisée lorsque le Button est désactivé (pour les dispositions de droite à gauche).


StyleBox focus 🔗

StyleBox utilisée lorsque le Button a le focus. La StyleBox du focus est affichée sur la StyleBox de base, donc une StyleBox partiellement transparente devrait être utilisée pour s'assurer que la StyleBox de base reste visible. Une StyleBox qui représente un contour ou un sous-lignage fonctionne bien à cette fin. Pour désactiver l'effet visuel du focus, assignez une ressource StyleBoxEmpty. Notez que la désactivation de l'effet visuel du focus va nuire à l'utilisabilité de la navigation avec clavier/contrôleur, ce qui n'est donc pas recommandé pour des raisons d'accessibilité.


StyleBox hover 🔗

Le StyleBox utilisé quand le Button est survolé.


StyleBox hover_mirrored 🔗

StyleBox utilisée lorsque le Button est survolé (pour les dispositions de droite à gauche).


StyleBox hover_pressed 🔗

StyleBox utilisée quand le Button est appuyé et survolé en même temps.


StyleBox hover_pressed_mirrored 🔗

StyleBox utilisée quand le Button est appuyé et survolé en même temps (pour les mises en pages droite à gauche).


StyleBox normal 🔗

StyleBox par défaut pour le Button.


StyleBox normal_mirrored 🔗

La StyleBox par défaut pour le Button (pour les mises en page de droite à gauche).


StyleBox pressed 🔗

Le StyleBox utilisé quand le Button est appuyé.


StyleBox pressed_mirrored 🔗

StyleBox utilisée quand le Button est appuyé en même temps (pour les mises en page droite à gauche).