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.

StyleBox

Hérite de : Resource < RefCounted < Object

Hérité par : StyleBoxEmpty, StyleBoxFlat, StyleBoxLine, StyleBoxTexture

Classe de base abstraite pour définir des boîtes stylisées pour des éléments d'UI.

Description

StyleBox is an abstract base class for drawing stylized boxes for UI elements. It is used for panels, buttons, LineEdit backgrounds, Tree backgrounds, etc. and also for testing a transparency mask for pointer signals. If mask test fails on a StyleBox assigned as mask to a control, clicks and motion signals will go through it to the one below.

Note: For control nodes that have Theme Properties, the focus StyleBox is displayed over the normal, hover or pressed StyleBox. This makes the focus StyleBox more reusable across different nodes.

Propriétés

float

content_margin_bottom

-1.0

float

content_margin_left

-1.0

float

content_margin_right

-1.0

float

content_margin_top

-1.0

Méthodes

void

_draw(to_canvas_item: RID, rect: Rect2) virtual required const

Rect2

_get_draw_rect(rect: Rect2) virtual const

Vector2

_get_minimum_size() virtual const

bool

_test_mask(point: Vector2, rect: Rect2) virtual const

void

draw(canvas_item: RID, rect: Rect2) const

float

get_content_margin(margin: Side) const

CanvasItem

get_current_item_drawn() const

float

get_margin(margin: Side) const

Vector2

get_minimum_size() const

Vector2

get_offset() const

void

set_content_margin(margin: Side, offset: float)

void

set_content_margin_all(offset: float)

bool

test_mask(point: Vector2, rect: Rect2) const


Descriptions des propriétés

float content_margin_bottom = -1.0 🔗

  • void set_content_margin(margin: Side, offset: float)

  • float get_content_margin(margin: Side) const

The bottom margin for the contents of this style box. Increasing this value reduces the space available to the contents from the bottom.

If this value is negative, it is ignored and a child-specific margin is used instead. For example, for StyleBoxFlat, the border thickness (if any) is used instead.

It is up to the code using this style box to decide what these contents are: for example, a Button respects this content margin for the textual contents of the button.

get_margin() should be used to fetch this value as consumer instead of reading these properties directly. This is because it correctly respects negative values and the fallback mentioned above.


float content_margin_left = -1.0 🔗

  • void set_content_margin(margin: Side, offset: float)

  • float get_content_margin(margin: Side) const

La marge gauche pour le contenu de cette stylebox. Augmenter cette valeur réduit l'espace disponible pour le contenu à partir de la gauche.

Se référer à content_margin_bottom pour des considérations supplémentaires.


float content_margin_right = -1.0 🔗

  • void set_content_margin(margin: Side, offset: float)

  • float get_content_margin(margin: Side) const

La marge droite pour le contenu de cette stylebox. Augmenter cette valeur réduit l'espace disponible pour le contenu à partir de la droite.

Se référer à content_margin_bottom pour des considérations supplémentaires.


float content_margin_top = -1.0 🔗

  • void set_content_margin(margin: Side, offset: float)

  • float get_content_margin(margin: Side) const

La marge du haut pour le contenu de cette stylebox. Augmenter cette valeur réduit l'espace disponible pour le contenu à partir du haut.

Se référer à content_margin_bottom pour des considérations supplémentaires.


Descriptions des méthodes

void _draw(to_canvas_item: RID, rect: Rect2) virtual required const 🔗

There is currently no description for this method. Please help us by contributing one!


Rect2 _get_draw_rect(rect: Rect2) virtual const 🔗

There is currently no description for this method. Please help us by contributing one!


Vector2 _get_minimum_size() virtual const 🔗

Méthode virtuelle à implémenter par l'utilisateur. Renvoie une taille minimale personnalisée que la stylebox doit respecter lors du dessin. Par défaut get_minimum_size() prend uniquement en compte les marges du contenu. Cette méthode peut être redéfinie pour ajouter une autre restriction de taille. Une combinaison du comportement par défaut et de la sortie de cette méthode sera utilisée pour tenir compte des deux tailles.


bool _test_mask(point: Vector2, rect: Rect2) virtual const 🔗

There is currently no description for this method. Please help us by contributing one!


void draw(canvas_item: RID, rect: Rect2) const 🔗

Dessine cette stylebox en utilisant un élément de canevasidentifié par le RID donné.

La valeur du RID peut soit être le résultat de CanvasItem.get_canvas_item() appelé sur un nœud dérivé de CanvasItem existant, ou directement de la création d'un élément de canevas dans le RenderingServer avec RenderingServer.canvas_item_create().


float get_content_margin(margin: Side) const 🔗

Renvoie la marge par défaut du côté Side spécifié.


CanvasItem get_current_item_drawn() const 🔗

Renvoie le CanvasItem qui gère sa CanvasItem.NOTIFICATION_DRAW ou sa méthode CanvasItem._draw() actuellement.


float get_margin(margin: Side) const 🔗

Renvoie le décalage de la marge de contenu pour le côté Side spécifié.

Les valeurs positives réduisent la taille vers l'intérieur, contrairement aux valeurs des marges de Control.


Vector2 get_minimum_size() const 🔗

Renvoie la taille minimale à laquelle cette stylebox peut être réduite.


Vector2 get_offset() const 🔗

Renvoie le "décalage" d'une boîte de style. Cette fonction d'aide renvoie une valeur équivalente à Vector2(style.get_margin(MARGIN_LEFT), style.get_margin(MARGIN_TOP)).


void set_content_margin(margin: Side, offset: float) 🔗

Définit la valeur par défaut du côté Side spécifié à offset pixels.


void set_content_margin_all(offset: float) 🔗

Définit la marge par défaut à offset pixels pour tous les côtés.


bool test_mask(point: Vector2, rect: Rect2) const 🔗

Teste une position dans un rectangle, renvoie si elle passe le test de masque.