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.

StyleBoxFlat

Hérite de : StyleBox < Resource < RefCounted < Object

Une StyleBox personnalisable qui n'utilise pas de texture.

Description

En configurant diverses propriétés de cette boîte de style, vous pouvez réaliser de nombreux looks communs sans avoir besoin d'une texture. Cela comprend les bordures arrondies, l'anticrénelage, les ombres et le cisaillement.

Définir le rayon des coins à des valeurs élevées est autorisé. Dès que les coins se chevauchent, la boîte de style passe à un système relatif :

hauteur = 30
rayon_coin_haut_gauche = 50
rayon_coin_bas_gauche = 100

Le système relatif prendrait maintenant le rapport 1:2 des deux coins gauches pour calculer la largeur réelle des coins. Les deux coins ajoutés ne seront jamais plus grands que la hauteur. Résultat :

rayon_coin_haut_gauche : 10
rayon_coin_bas_gauche : 20

Propriétés

bool

anti_aliasing

true

float

anti_aliasing_size

1.0

Color

bg_color

Color(0.6, 0.6, 0.6, 1)

bool

border_blend

false

Color

border_color

Color(0.8, 0.8, 0.8, 1)

int

border_width_bottom

0

int

border_width_left

0

int

border_width_right

0

int

border_width_top

0

int

corner_detail

8

int

corner_radius_bottom_left

0

int

corner_radius_bottom_right

0

int

corner_radius_top_left

0

int

corner_radius_top_right

0

bool

draw_center

true

float

expand_margin_bottom

0.0

float

expand_margin_left

0.0

float

expand_margin_right

0.0

float

expand_margin_top

0.0

Color

shadow_color

Color(0, 0, 0, 0.6)

Vector2

shadow_offset

Vector2(0, 0)

int

shadow_size

0

Vector2

skew

Vector2(0, 0)

Méthodes

int

get_border_width(margin: Side) const

int

get_border_width_min() const

int

get_corner_radius(corner: Corner) const

float

get_expand_margin(margin: Side) const

void

set_border_width(margin: Side, width: int)

void

set_border_width_all(width: int)

void

set_corner_radius(corner: Corner, radius: int)

void

set_corner_radius_all(radius: int)

void

set_expand_margin(margin: Side, size: float)

void

set_expand_margin_all(size: float)


Descriptions des propriétés

bool anti_aliasing = true 🔗

  • void set_anti_aliased(value: bool)

  • bool is_anti_aliased()

L'anticrénelage dessine un petit anneau autour des bords, qui disparaît vers de la transparence. En conséquence, les bords sont beaucoup plus doux. Ceci n'est visible que lorsque vous utilisez des coins arrondis ou skew.

Note : Lors de l'utilisation d'angles biseautés avec des angles de 45 degrés (corner_detail = 1), il est recommandé de définir anti_aliasing à false afin d'assurer des visuels nets et d'éviter des glitchs visuels possibles.


float anti_aliasing_size = 1.0 🔗

  • void set_aa_size(value: float)

  • float get_aa_size()

Cela modifie la taille de l'effet d'anticrénelage. 1.0 est recommandé pour un résultat optimal à l'échelle 100%, identique à la façon dont les rectangles arrondis sont rendus dans les navigateurs Web et la plupart des logiciels de dessin vectoriel.

Note : Des valeurs plus élevées peuvent produire un effet de flou, mais peuvent également créer des artéfacts indésirables sur les petites boîtes avec des angles à grand rayon.


Color bg_color = Color(0.6, 0.6, 0.6, 1) 🔗

  • void set_bg_color(value: Color)

  • Color get_bg_color()

La couleur d'arrière-plan de la stylebox.


bool border_blend = false 🔗

  • void set_border_blend(value: bool)

  • bool get_border_blend()

Si true, la bordure fusionnera avec la couleur de l'arrière-plan.


Color border_color = Color(0.8, 0.8, 0.8, 1) 🔗

  • void set_border_color(value: Color)

  • Color get_border_color()

Définit la couleur de la bordure.


int border_width_bottom = 0 🔗

  • void set_border_width(margin: Side, width: int)

  • int get_border_width(margin: Side) const

L'épaisseur de la bordure du bas.


int border_width_left = 0 🔗

  • void set_border_width(margin: Side, width: int)

  • int get_border_width(margin: Side) const

L'épaisseur de la bordure de gauche.


int border_width_right = 0 🔗

  • void set_border_width(margin: Side, width: int)

  • int get_border_width(margin: Side) const

L'épaisseur de la bordure de droite.


int border_width_top = 0 🔗

  • void set_border_width(margin: Side, width: int)

  • int get_border_width(margin: Side) const

L'épaisseur de la bordure du haut.


int corner_detail = 8 🔗

  • void set_corner_detail(value: int)

  • int get_corner_detail()

Cela définit le nombre de sommets utilisés pour chaque coin. Les valeurs plus élevées résultent en des angles plus ronds mais prennent plus de puissance de traitement pour calculer. Lors du choix d'une valeur, vous devriez prendre en compte le rayon du coin (set_corner_radius_all()).

Pour des rayons de coin inférieurs à 10, 4 ou 5 devrait suffire. Pour des rayons de coin inférieurs à 30, des valeurs entre 8 et 12 devraient suffire.

Un détail d'angle de 1 résultera en des angles chanfreinés au lieu d'angles arrondis, ce qui est utile pour certains effets artistiques.


int corner_radius_bottom_left = 0 🔗

  • void set_corner_radius(corner: Corner, radius: int)

  • int get_corner_radius(corner: Corner) const

Le rayon du coin bas-gauche. Si 0, le coin n'est pas arrondi.


int corner_radius_bottom_right = 0 🔗

  • void set_corner_radius(corner: Corner, radius: int)

  • int get_corner_radius(corner: Corner) const

Le rayon du coin bas-droit. Si 0, le coin n'est pas arrondi.


int corner_radius_top_left = 0 🔗

  • void set_corner_radius(corner: Corner, radius: int)

  • int get_corner_radius(corner: Corner) const

Le rayon du coin haut-gauche. Si 0, le coin n'est pas arrondi.


int corner_radius_top_right = 0 🔗

  • void set_corner_radius(corner: Corner, radius: int)

  • int get_corner_radius(corner: Corner) const

Le rayon du coin haut-droit. Si 0, le coin n'est pas arrondi.


bool draw_center = true 🔗

  • void set_draw_center(value: bool)

  • bool is_draw_center_enabled()

Active l'affichage de l'intérieur de la stylebox.


float expand_margin_bottom = 0.0 🔗

  • void set_expand_margin(margin: Side, size: float)

  • float get_expand_margin(margin: Side) const

Étend la boite en dehors du rectangle du contrôle pour la bordure du bas. Utile avec border_width_bottom pour afficher une bordure en dehors du rectangle du contrôle.

Note : Contrairement à StyleBox.content_margin_bottom, expand_margin_bottom n'étend pas la taille de la zone qui peut être cliquée du Control. Ça peut avoir un impact négatif sur l’accessibilité si c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de la boite qui ne reçoit pas les clics.


float expand_margin_left = 0.0 🔗

  • void set_expand_margin(margin: Side, size: float)

  • float get_expand_margin(margin: Side) const

Étend la boite en dehors du rectangle du contrôle pour la bordure de gauche. Utile avec border_width_left pour afficher une bordure en dehors du rectangle du contrôle.

Note : Contrairement à StyleBox.content_margin_left, expand_margin_left n'étend pas la taille de la zone qui peut être cliquée du Control. Ça peut avoir un impact négatif sur l’accessibilité si c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de la boite qui ne reçoit pas les clics.


float expand_margin_right = 0.0 🔗

  • void set_expand_margin(margin: Side, size: float)

  • float get_expand_margin(margin: Side) const

Étend la boite en dehors du rectangle du contrôle pour la bordure de droite. Utile avec border_width_right pour afficher une bordure en dehors du rectangle du contrôle.

Note : Contrairement à StyleBox.content_margin_right, expand_margin_right n'étend pas la taille de la zone qui peut être cliquée du Control. Ça peut avoir un impact négatif sur l’accessibilité si c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de la boite qui ne reçoit pas les clics.


float expand_margin_top = 0.0 🔗

  • void set_expand_margin(margin: Side, size: float)

  • float get_expand_margin(margin: Side) const

Étend la boite en dehors du rectangle du contrôle pour la bordure du haut. Utile avec border_width_top pour afficher une bordure en dehors du rectangle du contrôle.

Note : Contrairement à StyleBox.content_margin_top, expand_margin_top n'étend pas la taille de la zone qui peut être cliquée du Control. Ça peut avoir un impact négatif sur l’accessibilité si c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de la boite qui ne reçoit pas les clics.


Color shadow_color = Color(0, 0, 0, 0.6) 🔗

  • void set_shadow_color(value: Color)

  • Color get_shadow_color()

La couleur de l'ombre. Ça n'a aucun effet si shadow_size est inférieur à 1.


Vector2 shadow_offset = Vector2(0, 0) 🔗

Le décalage de l'ombre en pixels. Ajuste la position de l'ombre relativement à la boîte de style.


int shadow_size = 0 🔗

  • void set_shadow_size(value: int)

  • int get_shadow_size()

La taille de l'ombre en pixels.


Vector2 skew = Vector2(0, 0) 🔗

Si défini à une valeur non nulle sur l'un des axes, skew déforme la StyleBox horizontalement et/ou verticalement. Cela peut être utilisé pour les UIs de style "futuriste". Les valeurs positives cisaillent la StyleBox vers la droite (axe X) et vers le haut (axe Y), tandis que les valeurs négatives cisaillent la StyleBox vers la gauche (axe X) et vers le bas (axe Y).

Note : Pour garantir que le texte ne touche pas les bords de la StyleBox, envisagez d'augmenter la marge du contenu de la StyleBox (voir StyleBox.content_margin_bottom). Il est préférable d'augmenter la marge du contenu au lieu de la marge d'extension (voir expand_margin_bottom), car augmenter la marge d'extension n'augmente pas la taille de la zone cliquable pour les Controls.


Descriptions des méthodes

int get_border_width(margin: Side) const 🔗

Renvoie la largeur de la bordure du côté Side spécifié.


int get_border_width_min() const 🔗

Renvoie la plus fine bordure parmi les quatre bordures.


int get_corner_radius(corner: Corner) const 🔗

Renvoie le rayon du coin corner donné.


float get_expand_margin(margin: Side) const 🔗

Renvoie la taille de la marge d'extension du côté Side spécifié.


void set_border_width(margin: Side, width: int) 🔗

Définit la largeur de la bordure du côté Side spécifié à width pixels.


void set_border_width_all(width: int) 🔗

Définit la largeur de la bordure à width pixels pour tous les côtés.


void set_corner_radius(corner: Corner, radius: int) 🔗

Définit le rayon de coin à radius pixels pour le coin corner donné.


void set_corner_radius_all(radius: int) 🔗

Définit le rayon de coin à radius pixels pour tous les coins.


void set_expand_margin(margin: Side, size: float) 🔗

Définit la marge d'élargissement à size pixels pour le côté Side spécifié.


void set_expand_margin_all(size: float) 🔗

Définit la marge d'élargissement à size pixels pour tous les côtés.