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.
Checking the stable version of the documentation...
TabContainer
Hérite de : Container < Control < CanvasItem < Node < Object
Un conteneur qui crée un onglet pour chaque contrôle enfant, n'affichant que le contrôle de l'onglet actif.
Description
Arrange les contrôles enfants en une vue en onglets, créant un onglet pour chacun. Le contrôle correspondant à l'onglet actif est rendu visible, tandis que tous les autres contrôles enfants sont cachés. Ignore les contrôles non enfants.
Note : Le dessin des onglets cliquables est géré par ce nœud, TabBar n'est pas nécessaire.
Tutoriels
Propriétés
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Méthodes
get_current_tab_control() const |
|
get_popup() const |
|
get_previous_tab() const |
|
get_tab_bar() const |
|
get_tab_button_icon(tab_idx: int) const |
|
get_tab_control(tab_idx: int) const |
|
get_tab_count() const |
|
get_tab_icon(tab_idx: int) const |
|
get_tab_icon_max_width(tab_idx: int) const |
|
get_tab_idx_at_point(point: Vector2) const |
|
get_tab_idx_from_control(control: Control) const |
|
get_tab_metadata(tab_idx: int) const |
|
get_tab_title(tab_idx: int) const |
|
get_tab_tooltip(tab_idx: int) const |
|
is_tab_disabled(tab_idx: int) const |
|
is_tab_hidden(tab_idx: int) const |
|
void |
|
void |
set_tab_button_icon(tab_idx: int, icon: Texture2D) |
void |
set_tab_disabled(tab_idx: int, disabled: bool) |
void |
set_tab_hidden(tab_idx: int, hidden: bool) |
void |
set_tab_icon(tab_idx: int, icon: Texture2D) |
void |
set_tab_icon_max_width(tab_idx: int, width: int) |
void |
set_tab_metadata(tab_idx: int, metadata: Variant) |
void |
set_tab_title(tab_idx: int, title: String) |
void |
set_tab_tooltip(tab_idx: int, tooltip: String) |
Propriétés du thème
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Signaux
active_tab_rearranged(idx_to: int) 🔗
Émis quand l'onglet actif est réarrangé en glissant la souris. Voir drag_to_rearrange_enabled.
pre_popup_pressed() 🔗
Émis quand le bouton Popup du TabContainer est cliqué. Voir set_popup() pour les détails.
tab_button_pressed(tab: int) 🔗
Émis lorsque l'utilisateur clique sur l'icône du bouton de cet onglet.
Émis au changement d'onglet.
Émis quand un onglet est cliqué, même si c'est l'onglet actuel.
Émis quand un onglet est survolé par la souris.
Émis lorsqu'un onglet est sélectionné par un clic, une entrée directionnelle ou un script, même s'il s'agit de l'onglet actuel.
Énumérations
enum TabPosition: 🔗
TabPosition POSITION_TOP = 0
Place la barre d'onglet en haut.
TabPosition POSITION_BOTTOM = 1
Place la barre d'onglets en bas. La StyleBox de la barre d'onglets sera inversée verticalement.
TabPosition POSITION_MAX = 2
Représente la taille de l'énumération TabPosition.
Descriptions des propriétés
Obsolète : Due to internal changes this doesn't do anything anymore, as they're always in front.
This doesn't do anything.
Si true, les onglets débordant de la largeur de ce nœud seront cachés, affichant deux boutons de navigation à la place. Sinon, la taille minimale de ce nœud est mise à jour de sorte que tous les onglets soient visibles.
L'index actuel de l'onglet. Lorsque définie, la propriété visible du nœud Control de cet index est définie à true et toutes les autres sont définies à false.
Une valeur de -1 signifie qu'aucun onglet n'est sélectionné.
bool deselect_enabled = false 🔗
Si true, tous les onglets peuvent être désélectionnés de sorte qu'aucun onglet ne soit sélectionné. Cliquez sur l'onglet actuel current_tab pour le désélectionner.
Seul l'en-tête de l'onglet sera affiché si aucun onglet n'est sélectionné.
bool drag_to_rearrange_enabled = false 🔗
Si true, les onglets peuvent être réarrangés avec par déposé-glissé.
bool switch_on_drag_hover = true 🔗
If true, hovering over a tab while dragging something will switch to that tab. Does not have effect when hovering another tab to rearrange.
AlignmentMode tab_alignment = 0 🔗
void set_tab_alignment(value: AlignmentMode)
AlignmentMode get_tab_alignment()
La position à laquelle les onglets seront placés.
FocusMode tab_focus_mode = 2 🔗
Le mode d'accès au focus pour le nœud TabBar interne.
bool tab_{index}/disabled = false 🔗
If true, the tab at index is disabled.
Note: index is a value in the 0 .. get_tab_count() - 1 range.
If true, the tab at index is hidden.
Note: index is a value in the 0 .. get_tab_count() - 1 range.
The title text of the tab at index.
Note: index is a value in the 0 .. get_tab_count() - 1 range.
String tab_{index}/title = "" 🔗
The tooltip text of the tab at index.
Note: index is a value in the 0 .. get_tab_count() - 1 range.
TabPosition tabs_position = 0 🔗
void set_tabs_position(value: TabPosition)
TabPosition get_tabs_position()
The horizontal alignment of the tabs.
int tabs_rearrange_group = -1 🔗
TabContainers with the same rearrange group ID will allow dragging the tabs between them. Enable drag with drag_to_rearrange_enabled.
Setting this to -1 will disable rearranging between TabContainers.
Si true, les onglets sont visibles. Si false, le contenu des onglets et les titres sont masqués.
Si true, les nœuds Control enfants qui sont cachés auront leur taille minimale qui sera prise en compte dans le total, au lieu de seulement celle actuellement visible.
Descriptions des méthodes
Control get_current_tab_control() const 🔗
Renvoie le nœud Control enfant localisé à l'index de l'onglet actif.
Renvoie l'instance de nœud Popup si l'un a déjà été défini avec set_popup().
Avertissement : Il s'agit d'un nœud interne requis, le retirer et le supprimer peut causer un plantage. Si vous voulez le cacher ou l'un de ses enfants, utilisez leur propriété Window.visible.
int get_previous_tab() const 🔗
Renvoie l'index de l'onglet précédemment actif.
Renvoie le TabBar contenu dans ce conteneur.
Attention : Il s'agit d'un nœud interne nécessaire, l'enlever et le libérer ou en éditer les onglets peut causer un plantage. Si vous souhaitez modifier les onglets, utilisez les méthodes fournies dans TabContainer.
Texture2D get_tab_button_icon(tab_idx: int) const 🔗
Renvoie l'icône du bouton dans l'onglet à l'index tab_idx.
Control get_tab_control(tab_idx: int) const 🔗
Renvoie le nœud Control de l'onglet à l'index tab_idx.
Renvoie le nombre d'onglets.
Texture2D get_tab_icon(tab_idx: int) const 🔗
Renvoie la Texture2D pour l'onglet à l'index tab_idx ou null si l'onglet n'a pas de Texture2D.
int get_tab_icon_max_width(tab_idx: int) const 🔗
Renvoie la largeur maximale autorisée de l'icône pour l'onglet à l'index tab_idx.
int get_tab_idx_at_point(point: Vector2) const 🔗
Renvoie l'index de l'onglet aux coordonnées locales point. Renvoie -1 si le point est en dehors des limites du contrôle ou s'il n'y a pas d'onglet à la position demandée.
int get_tab_idx_from_control(control: Control) const 🔗
Renvoie l'index de l'onglet lié au contrôle control donné. Le contrôle doit être un enfant du TabContainer.
Variant get_tab_metadata(tab_idx: int) const 🔗
Renvoie la valeur des métadonnées définies dans l'onglet à l'index tab_idx en utilisant set_tab_metadata(). Si aucune métadonnée n'a été précédemment définie, renvoie null par défaut.
String get_tab_title(tab_idx: int) const 🔗
Renvoie le titre de l'onglet à l'index tab_idx. Le titres des onglets sont par défaut le nom des nœuds enfants indexés, mais ça peut être redéfini avec set_tab_title().
String get_tab_tooltip(tab_idx: int) const 🔗
Renvoie le texte de l'info-bulle de l'onglet à l'index tab_idx.
bool is_tab_disabled(tab_idx: int) const 🔗
Renvoie true si l'onglet à la position tab_idx est désactivé.
Renvoie true si l'onglet à l'index tab_idx est masqué.
bool select_next_available() 🔗
Sélectionne le premier onglet disponible avec un index supérieur à celui actuellement sélectionné. Renvoietrue si la sélection d'onglet a changé.
bool select_previous_available() 🔗
Sélectionne le premier onglet disponible avec un index inférieur à celui actuellement sélectionné. Renvoietrue si la sélection d'onglet a changé.
Si défini à une instance de nœud Popup, une icône de menu popup apparaît dans le coin supérieur droit du TabContainer (le définir à null la fera disparaître). Cliquer dessus étendra le nœud Popup.
void set_tab_button_icon(tab_idx: int, icon: Texture2D) 🔗
Définit l'icône du bouton de l'onglet à l'index tab_idx.
void set_tab_disabled(tab_idx: int, disabled: bool) 🔗
Si disabled est true, désactive l'onglet à l'index tab_idx, le rendant non-interactif.
Si hidden vaut true, cache l'onglet à l'index tab_idx, le faisait disparaître de la zone des onglets.
void set_tab_icon(tab_idx: int, icon: Texture2D) 🔗
Définit une icône pour l'onglet à la position tab_idx.
void set_tab_icon_max_width(tab_idx: int, width: int) 🔗
Définit la largeur maximale autorisée de l'icône pour l'onglet à l'index tab_idx. Cette limite est appliquée en plus de la taille par défaut de l'icône et en plus de icon_max_width. La hauteur est ajustée selon le ratio de l'icône.
void set_tab_metadata(tab_idx: int, metadata: Variant) 🔗
Définit la valeur des métadonnées pour l'onglet à l'index tab_idx, qui peuvent être récupérées plus tard en utilisant get_tab_metadata().
void set_tab_title(tab_idx: int, title: String) 🔗
Définit un titre personnalisé pour l'onglet à l'index tab_idx (les titres des onglets sont par défaut le nom du nœud enfant indexé). Définissez au nom de l'enfant pour qu'il redevienne le nom par défaut.
void set_tab_tooltip(tab_idx: int, tooltip: String) 🔗
Définit un texte d'info-bulle personnalisé pour l'onglet à l'index tab_idx.
Note : Par défaut, si le tooltip est vide et que le texte de l'onglet est tronqué (tous les caractères ne s'inscrivent pas tous dans l'onglet), le titre sera affiché en tant qu'info-bulle. Pour cacher l'info-bulle, assignez " " comme texte du tooltip.
Descriptions des propriétés du thème
Color drop_mark_color = Color(1, 1, 1, 1) 🔗
Couleur de modulation pour l'icône drop_mark.
Color font_disabled_color = Color(0.875, 0.875, 0.875, 0.5) 🔗
La couleur de la police pour les onglets désactivés.
Color font_hovered_color = Color(0.95, 0.95, 0.95, 1) 🔗
Couleur de la police de l'onglet actuellement survolé. Ne s'applique pas à l'onglet sélectionné.
Color font_outline_color = Color(0, 0, 0, 1) 🔗
La teinte du contour du texte du nom de l'onglet.
Color font_selected_color = Color(0.95, 0.95, 0.95, 1) 🔗
La couleur de la police pour l'onglet actuellement sélectionné.
Color font_unselected_color = Color(0.7, 0.7, 0.7, 1) 🔗
Couleur de police pour les autres onglets, non sélectionnés.
Color icon_disabled_color = Color(1, 1, 1, 1) 🔗
Icon color of disabled tabs.
Color icon_hovered_color = Color(1, 1, 1, 1) 🔗
Icon color of the currently hovered tab. Does not apply to the selected tab.
Color icon_selected_color = Color(1, 1, 1, 1) 🔗
Icon color of the currently selected tab.
Color icon_unselected_color = Color(1, 1, 1, 1) 🔗
Icon color of the other, unselected tabs.
La largeur maximale autorisée de l'icône de l'onglet. Cette limite est appliquée par dessus la taille par défaut de l'icône, mais avant la valeur définie avec TabBar.set_tab_icon_max_width(). La hauteur est ajustée selon le rapport de l'icône.
Espacement entre le nom de l'onglet et son icône.
La taille du contour du texte de l'onglet.
Note : Lors de l'utilisation d'une police avec FontFile.multichannel_signed_distance_field activé, son FontFile.msdf_pixel_range doit être défini à au moins deux fois la valeur de outline_size pour que le rendu puisse être correct. Sinon, le contour peut sembler être coupé plus tôt que prévu.
L'espace du bord gauche ou droite de la barre d'onglet, selon le tab_alignment actuel.
La marge est ignorée avec TabBar.ALIGNMENT_RIGHT si les onglets sont coupés (voir clip_tabs) ou si une popup a été définie (voir set_popup()). La marge est toujours ignorée avec TabBar.ALIGNMENT_CENTER.
L'espace entre les onglets dans la barre d'onglets.
La police utilisée pour les noms des onglets.
Taille de police des noms d'onglet.
L'icône pour le bouton flèche de gauche qui apparaît quand il y a trop d'onglets à afficher dans le conteneur. Lorsque le bouton est désactivé (c'est-à-dire le premier onglet est visible), il apparaît en semi-transparent.
Texture2D decrement_highlight 🔗
L'icône pour le bouton flèche de gauche qui apparaît quand il y a trop d'onglets à afficher dans le conteneur. Utilisé quand le bouton est survolé par le curseur.
Icon shown to indicate where a dragged tab will be dropped (see drag_to_rearrange_enabled).
L'icône pour le bouton flèche de droite qui apparaît quand il y a trop d'onglets à afficher dans le conteneur. Lorsque le bouton est désactivé (c'est-à-dire le dernier onglet est visible), il apparaît en semi-transparent.
Texture2D increment_highlight 🔗
L'icône pour le bouton flèche de droite qui apparaît quand il y a trop d'onglets à afficher dans le conteneur. Utilisé quand le bouton est survolé par le curseur.
L'icône pour le bouton de menu (voir set_popup()).
L'icône du bouton de menu (voir set_popup()) quand il est survolé par le curseur de la souris.
Le style pour le remplissage de l'arrière-plan.
Le style des onglets désactivés.
StyleBox utilisé lorsque le TabBar a le focus. La StyleBox tab_focus est affichée par-dessus la StyleBox de base de l'onglet sélectionné, ainsi 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 soulignement 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 clavier/contrôleur, ce qui n'est donc pas recommandé pour des raisons d'accessibilité.
Le style de l'onglet actuellement survolé.
Note : Ce style sera dessiné avec la même largeur que tab_unselected au minimum.
Le style de l'onglet actuellement sélectionné.
Le style des autres onglets, non sélectionnés.
Le style pour le remplissage de l'arrière-plan de la zone TabBar.