:github_url: hide .. _class_TextureProgressBar: TextureProgressBar ================== **Hérite de :** :ref:`Range` **<** :ref:`Control` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` Barre de progression avec une texture. Utile pour les écrans de chargement et les barres de vie ou d'endurance. .. rst-class:: classref-introduction-group Description ----------- TextureProgressBar fonctionne comme :ref:`ProgressBar`, mais utilise jusqu'à 3 textures au lieu de la ressource :ref:`Theme` de Godot. Elle peut être utilisée pour créer des barres de progression horizontales, verticales et radiales. .. rst-class:: classref-reftable-group Propriétés -------------------- .. table:: :widths: auto +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`int` | :ref:`fill_mode` | ``0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`MouseFilter` | mouse_filter | ``1`` (overrides :ref:`Control`) | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`nine_patch_stretch` | ``false`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`radial_center_offset` | ``Vector2(0, 0)`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`float` | :ref:`radial_fill_degrees` | ``360.0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`float` | :ref:`radial_initial_angle` | ``0.0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | |bitfield|\[:ref:`SizeFlags`\] | size_flags_vertical | ``1`` (overrides :ref:`Control`) | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`float` | step | ``1.0`` (overrides :ref:`Range`) | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`int` | :ref:`stretch_margin_bottom` | ``0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`int` | :ref:`stretch_margin_left` | ``0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`int` | :ref:`stretch_margin_right` | ``0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`int` | :ref:`stretch_margin_top` | ``0`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Texture2D` | :ref:`texture_over` | | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Texture2D` | :ref:`texture_progress` | | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`texture_progress_offset` | ``Vector2(0, 0)`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Texture2D` | :ref:`texture_under` | | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`tint_over` | ``Color(1, 1, 1, 1)`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`tint_progress` | ``Color(1, 1, 1, 1)`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ | :ref:`Color` | :ref:`tint_under` | ``Color(1, 1, 1, 1)`` | +--------------------------------------------------------+-------------------------------------------------------------------------------------------+------------------------------------------------------------------------------+ .. rst-class:: classref-reftable-group Méthodes ---------------- .. table:: :widths: auto +-----------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_stretch_margin`\ (\ margin\: :ref:`Side`\ ) |const| | +-----------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_stretch_margin`\ (\ margin\: :ref:`Side`, value\: :ref:`int`\ ) | +-----------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Énumérations ------------------------ .. _enum_TextureProgressBar_FillMode: .. rst-class:: classref-enumeration enum **FillMode**: :ref:`🔗` .. _class_TextureProgressBar_constant_FILL_LEFT_TO_RIGHT: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_LEFT_TO_RIGHT** = ``0`` La :ref:`texture_progress` remplis de gauche à droite. .. _class_TextureProgressBar_constant_FILL_RIGHT_TO_LEFT: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_RIGHT_TO_LEFT** = ``1`` La :ref:`texture_progress` remplis de droite à gauche. .. _class_TextureProgressBar_constant_FILL_TOP_TO_BOTTOM: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_TOP_TO_BOTTOM** = ``2`` La :ref:`texture_progress` remplis de haut en bas. .. _class_TextureProgressBar_constant_FILL_BOTTOM_TO_TOP: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_BOTTOM_TO_TOP** = ``3`` La :ref:`texture_progress` remplis de bas en haut. .. _class_TextureProgressBar_constant_FILL_CLOCKWISE: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_CLOCKWISE** = ``4`` Transforme le nœud en une barre radiale. La texture :ref:`texture_progress` se remplit en sens horaire. Voir :ref:`radial_center_offset`, :ref:`radial_initial_angle` et :ref:`radial_fill_degrees` pour contrôler la façon dont la barre se remplit. .. _class_TextureProgressBar_constant_FILL_COUNTER_CLOCKWISE: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_COUNTER_CLOCKWISE** = ``5`` Transforme le nœud en une barre radiale. La texture :ref:`texture_progress` se remplit en sens anti-horaire. Voir :ref:`radial_center_offset`, :ref:`radial_initial_angle` et :ref:`radial_fill_degrees` pour contrôler la façon dont la barre se remplit. .. _class_TextureProgressBar_constant_FILL_BILINEAR_LEFT_AND_RIGHT: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_BILINEAR_LEFT_AND_RIGHT** = ``6`` La texture :ref:`texture_progress` se remplit depuis le centre, s'étendant à la fois vers la gauche et la droite. .. _class_TextureProgressBar_constant_FILL_BILINEAR_TOP_AND_BOTTOM: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_BILINEAR_TOP_AND_BOTTOM** = ``7`` La texture :ref:`texture_progress` se remplit depuis le centre, s'étendant à la fois vers le haut et le bas. .. _class_TextureProgressBar_constant_FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE: .. rst-class:: classref-enumeration-constant :ref:`FillMode` **FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE** = ``8`` Transforme le nœud en une barre radiale. La texture :ref:`texture_progress` se remplit de manière radiale depuis le centre, s’étendant à la fois dans le sens horaire et anti-horaire . Voir :ref:`radial_center_offset`, :ref:`radial_initial_angle` et :ref:`radial_fill_degrees` pour contrôler la façon dont la barre se remplit. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Descriptions des propriétés ------------------------------------------------------ .. _class_TextureProgressBar_property_fill_mode: .. rst-class:: classref-property :ref:`int` **fill_mode** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_fill_mode**\ (\ value\: :ref:`int`\ ) - :ref:`int` **get_fill_mode**\ (\ ) La direction de remplissage. Voir :ref:`FillMode` pour les valeurs possibles. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_nine_patch_stretch: .. rst-class:: classref-property :ref:`bool` **nine_patch_stretch** = ``false`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_nine_patch_stretch**\ (\ value\: :ref:`bool`\ ) - :ref:`bool` **get_nine_patch_stretch**\ (\ ) Si ``true``, Godot traite les textures de la barre comme dans :ref:`NinePatchRect`. Utilisez les propriétés ``stretch_margin_*`` comme :ref:`stretch_margin_bottom` pour configurer la grille 3×3 des neuf patchs. Lors de l'utilisation d'un mode de remplissage :ref:`fill_mode` radial, ce paramètre n'activera l'étirement que pour :ref:`texture_progress`, tandis que :ref:`texture_under` et :ref:`texture_over` seront traités comme dans :ref:`NinePatchRect`. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_radial_center_offset: .. rst-class:: classref-property :ref:`Vector2` **radial_center_offset** = ``Vector2(0, 0)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_radial_center_offset**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_radial_center_offset**\ (\ ) Décale :ref:`texture_progress` si :ref:`fill_mode` vaut :ref:`FILL_CLOCKWISE`, :ref:`FILL_COUNTER_CLOCKWISE`, ou :ref:`FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE`. \ **Note :** Le centre radial effectif reste toujours dans les limites de :ref:`texture_progress`. Si vous devez le déplacer en dehors des limites de la texture, modifiez :ref:`texture_progress` pour contenir un espace vide supplémentaire où il y en a besoin. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_radial_fill_degrees: .. rst-class:: classref-property :ref:`float` **radial_fill_degrees** = ``360.0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_fill_degrees**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_fill_degrees**\ (\ ) Limite supérieure pour le remplissage de :ref:`texture_progress` si :ref:`fill_mode` vaut :ref:`FILL_CLOCKWISE`, :ref:`FILL_COUNTER_CLOCKWISE`, ou :ref:`FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE`. Lorsque la valeur ``value`` du nœud est égale à sa valeur maximale ``max_value``, la texture se remplit jusqu'à cet angle. Voir :ref:`Range.value`, :ref:`Range.max_value`. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_radial_initial_angle: .. rst-class:: classref-property :ref:`float` **radial_initial_angle** = ``0.0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_radial_initial_angle**\ (\ value\: :ref:`float`\ ) - :ref:`float` **get_radial_initial_angle**\ (\ ) Angle de départ pour le remplissage de :ref:`texture_progress` si :ref:`fill_mode` vaut :ref:`FILL_CLOCKWISE`, :ref:`FILL_COUNTER_CLOCKWISE`, ou :ref:`FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE`. Lorsque la valeur ``value`` du nœud est égale à sa valeur minimale ``min_value``, la texture ne s'affiche pas du tout. Lorsque la valeur ``value`` augmente, la texture se remplit et tend vers :ref:`radial_fill_degrees`. \ **Note :** :ref:`radial_initial_angle` est enroulé entre ``0`` et ``360`` degrés (inclusifs). .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_stretch_margin_bottom: .. rst-class:: classref-property :ref:`int` **stretch_margin_bottom** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_stretch_margin**\ (\ margin\: :ref:`Side`, value\: :ref:`int`\ ) - :ref:`int` **get_stretch_margin**\ (\ margin\: :ref:`Side`\ ) |const| La hauteur de la ligne du bas des 9 patchs. Une marge de 16 signifie que les angles du bas des 9 patchs et les côtés auront une hauteur de 16 pixels. Vous pouvez définir les 4 valeurs de marge individuellement pour créer des panneaux avec des bordures non uniformes. Seulement effectif si :ref:`nine_patch_stretch` vaut ``true``. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_stretch_margin_left: .. rst-class:: classref-property :ref:`int` **stretch_margin_left** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_stretch_margin**\ (\ margin\: :ref:`Side`, value\: :ref:`int`\ ) - :ref:`int` **get_stretch_margin**\ (\ margin\: :ref:`Side`\ ) |const| La largeur de la colonne de gauche du 9-patchs. Seulement effectif si :ref:`nine_patch_stretch` vaut ``true``. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_stretch_margin_right: .. rst-class:: classref-property :ref:`int` **stretch_margin_right** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_stretch_margin**\ (\ margin\: :ref:`Side`, value\: :ref:`int`\ ) - :ref:`int` **get_stretch_margin**\ (\ margin\: :ref:`Side`\ ) |const| La largeur de la colonne de droite du 9-patchs. Seulement effectif si :ref:`nine_patch_stretch` vaut ``true``. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_stretch_margin_top: .. rst-class:: classref-property :ref:`int` **stretch_margin_top** = ``0`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_stretch_margin**\ (\ margin\: :ref:`Side`, value\: :ref:`int`\ ) - :ref:`int` **get_stretch_margin**\ (\ margin\: :ref:`Side`\ ) |const| La hauteur de la ligne du haut du 9-patchs. Seulement effectif si :ref:`nine_patch_stretch` vaut ``true``. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_texture_over: .. rst-class:: classref-property :ref:`Texture2D` **texture_over** :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_over_texture**\ (\ value\: :ref:`Texture2D`\ ) - :ref:`Texture2D` **get_over_texture**\ (\ ) :ref:`Texture2D` qui se dessine sur la barre de progression. Utilisez la pour accentuer des parties ou ajouter un cadre par dessus qui cache une partie de :ref:`texture_progress`. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_texture_progress: .. rst-class:: classref-property :ref:`Texture2D` **texture_progress** :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_progress_texture**\ (\ value\: :ref:`Texture2D`\ ) - :ref:`Texture2D` **get_progress_texture**\ (\ ) :ref:`Texture2D` qui se coupe selon la valeur ``value`` du nœud et :ref:`fill_mode`. Quand la valeur ``value`` augmente, la texture se remplit. Elle est affichée entièrement lorsque ``value`` atteint ``max_value``. Elle n'est pas du tout affiché si ``value`` est égale à ``min_value``. La propriété ``value`` provient de :ref:`Range`. Voir :ref:`Range.value`, :ref:`Range.min_value`, :ref:`Range.max_value`. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_texture_progress_offset: .. rst-class:: classref-property :ref:`Vector2` **texture_progress_offset** = ``Vector2(0, 0)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_texture_progress_offset**\ (\ value\: :ref:`Vector2`\ ) - :ref:`Vector2` **get_texture_progress_offset**\ (\ ) Le décalage de :ref:`texture_progress`. Utile pour :ref:`texture_over` et :ref:`texture_under` avec des bordures détaillées, pour éviter des marges transparentes dans votre texture de progression. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_texture_under: .. rst-class:: classref-property :ref:`Texture2D` **texture_under** :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_under_texture**\ (\ value\: :ref:`Texture2D`\ ) - :ref:`Texture2D` **get_under_texture**\ (\ ) :ref:`Texture2D` qui est dessinée sous la barre de progression. L'arrière-plan de la barre. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_tint_over: .. rst-class:: classref-property :ref:`Color` **tint_over** = ``Color(1, 1, 1, 1)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_tint_over**\ (\ value\: :ref:`Color`\ ) - :ref:`Color` **get_tint_over**\ (\ ) Multiplie la couleur de la texture :ref:`texture_over` de la barre. L'effet est semblable à :ref:`CanvasItem.modulate`, sauf qu'il affecte seulement cette texture spécifique au lieu de l'ensemble du nœud. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_tint_progress: .. rst-class:: classref-property :ref:`Color` **tint_progress** = ``Color(1, 1, 1, 1)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_tint_progress**\ (\ value\: :ref:`Color`\ ) - :ref:`Color` **get_tint_progress**\ (\ ) Multiplie la couleur de la texture :ref:`texture_progress` de la barre. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_property_tint_under: .. rst-class:: classref-property :ref:`Color` **tint_under** = ``Color(1, 1, 1, 1)`` :ref:`🔗` .. rst-class:: classref-property-setget - |void| **set_tint_under**\ (\ value\: :ref:`Color`\ ) - :ref:`Color` **get_tint_under**\ (\ ) Multiplie la couleur de la texture :ref:`texture_under` de la barre. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Descriptions des méthodes -------------------------------------------------- .. _class_TextureProgressBar_method_get_stretch_margin: .. rst-class:: classref-method :ref:`int` **get_stretch_margin**\ (\ margin\: :ref:`Side`\ ) |const| :ref:`🔗` Renvoie la marge d'étirement avec l'index spécifié. Voir :ref:`stretch_margin_bottom` et les propriétés liées. .. rst-class:: classref-item-separator ---- .. _class_TextureProgressBar_method_set_stretch_margin: .. rst-class:: classref-method |void| **set_stretch_margin**\ (\ margin\: :ref:`Side`, value\: :ref:`int`\ ) :ref:`🔗` Définit la marge d'étirement avec l'index spécifié. Voir :ref:`stretch_margin_bottom` et les propriétés liées. .. |virtual| replace:: :abbr:`virtual (Cette méthode doit typiquement être redéfinie par l'utilisateur pour avoir un effet.)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (Cette méthode n'a pas d'effets de bord. Elle ne modifie aucune des variables membres de l'instance.)` .. |vararg| replace:: :abbr:`vararg (Cette méthode accepte n'importe quel nombre d'arguments après ceux décris ici.)` .. |constructor| replace:: :abbr:`constructor (Cette méthode est utilisée pour construire un type.)` .. |static| replace:: :abbr:`static (Cette méthode n'a pas besoin d'instance pour être appelée, elle peut donc être directement appelée en utilisant le nom de la classe.)` .. |operator| replace:: :abbr:`operator (Cette méthode décrit un opérateur valide à utiliser avec ce type en tant qu'opérande gauche.)` .. |bitfield| replace:: :abbr:`BitField (Cette valeur est un nombre entier composé d'un masque de bits des options suivantes.)` .. |void| replace:: :abbr:`void (Aucune valeur de retour.)`