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.

TabBar

Eredita: Control < CanvasItem < Node < Object

Un controllo che fornisce una barra orizzontale con schede.

Descrizione

Un controllo che fornisce una barra orizzontale con schede. Simile a TabContainer ma è responsabile solo del disegno delle schede, non dell'interazione con i figli.

Proprietà

bool

clip_tabs

true

bool

close_with_middle_mouse

true

int

current_tab

-1

bool

deselect_enabled

false

bool

drag_to_rearrange_enabled

false

FocusMode

focus_mode

2 (overrides Control)

int

max_tab_width

0

bool

scroll_to_selected

true

bool

scrolling_enabled

true

bool

select_with_rmb

false

bool

switch_on_drag_hover

true

AlignmentMode

tab_alignment

0

CloseButtonDisplayPolicy

tab_close_display_policy

0

int

tab_count

0

bool

tab_{index}/disabled

false

Texture2D

tab_{index}/icon

String

tab_{index}/title

""

String

tab_{index}/tooltip

""

int

tabs_rearrange_group

-1

Metodi

void

add_tab(title: String = "", icon: Texture2D = null)

void

clear_tabs()

void

ensure_tab_visible(idx: int)

bool

get_offset_buttons_visible() const

int

get_previous_tab() const

Texture2D

get_tab_button_icon(tab_idx: int) const

Texture2D

get_tab_icon(tab_idx: int) const

int

get_tab_icon_max_width(tab_idx: int) const

int

get_tab_idx_at_point(point: Vector2) const

String

get_tab_language(tab_idx: int) const

Variant

get_tab_metadata(tab_idx: int) const

int

get_tab_offset() const

Rect2

get_tab_rect(tab_idx: int) const

TextDirection

get_tab_text_direction(tab_idx: int) const

String

get_tab_title(tab_idx: int) const

String

get_tab_tooltip(tab_idx: int) const

bool

is_tab_disabled(tab_idx: int) const

bool

is_tab_hidden(tab_idx: int) const

void

move_tab(from: int, to: int)

void

remove_tab(tab_idx: int)

bool

select_next_available()

bool

select_previous_available()

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_language(tab_idx: int, language: String)

void

set_tab_metadata(tab_idx: int, metadata: Variant)

void

set_tab_text_direction(tab_idx: int, direction: TextDirection)

void

set_tab_title(tab_idx: int, title: String)

void

set_tab_tooltip(tab_idx: int, tooltip: String)

Proprietà del tema

Color

drop_mark_color

Color(1, 1, 1, 1)

Color

font_disabled_color

Color(0.875, 0.875, 0.875, 0.5)

Color

font_hovered_color

Color(0.95, 0.95, 0.95, 1)

Color

font_outline_color

Color(0, 0, 0, 1)

Color

font_selected_color

Color(0.95, 0.95, 0.95, 1)

Color

font_unselected_color

Color(0.7, 0.7, 0.7, 1)

Color

icon_disabled_color

Color(1, 1, 1, 1)

Color

icon_hovered_color

Color(1, 1, 1, 1)

Color

icon_selected_color

Color(1, 1, 1, 1)

Color

icon_unselected_color

Color(1, 1, 1, 1)

int

h_separation

4

int

hover_switch_wait_msec

500

int

icon_max_width

0

int

outline_size

0

int

tab_separation

0

Font

font

int

font_size

Texture2D

close

Texture2D

decrement

Texture2D

decrement_highlight

Texture2D

drop_mark

Texture2D

increment

Texture2D

increment_highlight

StyleBox

button_highlight

StyleBox

button_pressed

StyleBox

tab_disabled

StyleBox

tab_focus

StyleBox

tab_hovered

StyleBox

tab_selected

StyleBox

tab_unselected


Segnali

active_tab_rearranged(idx_to: int) 🔗

Emesso quando la scheda attiva viene riorganizzata tramite il trascinamento del mouse. Vedi drag_to_rearrange_enabled.


tab_button_pressed(tab: int) 🔗

Emesso quando viene premuto il pulsante destro di una scheda. Vedi set_tab_button_icon().


tab_changed(tab: int) 🔗

Emesso quando si cambia a un'altra scheda.


tab_clicked(tab: int) 🔗

Emesso quando si clicca su una scheda, anche se è la scheda attuale.


tab_close_pressed(tab: int) 🔗

Emesso quando si preme il pulsante di chiusura di una scheda oppure, se close_with_middle_mouse è true, quando si clicca con il pulsante centrale su una scheda.

Nota: Le schede non vengono rimosse automaticamente; questo comportamento deve essere programmato manualmente. Ad esempio:

$TabBar.tab_close_pressed.connect($TabBar.remove_tab)

tab_hovered(tab: int) 🔗

Emesso quando si passa il mouse su una scheda.


tab_rmb_clicked(tab: int) 🔗

Emitted when a tab is right-clicked.


tab_selected(tab: int) 🔗

Emesso quando una scheda viene selezionata tramite clic, input direzionale o script, anche se è la scheda attuale.


Enumerazioni

enum AlignmentMode: 🔗

AlignmentMode ALIGNMENT_LEFT = 0

Aligns tabs to the left.

AlignmentMode ALIGNMENT_CENTER = 1

Aligns tabs in the middle.

AlignmentMode ALIGNMENT_RIGHT = 2

Aligns tabs to the right.

AlignmentMode ALIGNMENT_MAX = 3

Rappresenta la dimensione dell'enumerazione AlignmentMode.


enum CloseButtonDisplayPolicy: 🔗

CloseButtonDisplayPolicy CLOSE_BUTTON_SHOW_NEVER = 0

Non mostra mai i pulsanti di chiusura.

CloseButtonDisplayPolicy CLOSE_BUTTON_SHOW_ACTIVE_ONLY = 1

Mostra il pulsante di chiusura solo sulla scheda attualmente attiva.

CloseButtonDisplayPolicy CLOSE_BUTTON_SHOW_ALWAYS = 2

Mostra il pulsante di chiusura su tutte le schede.

CloseButtonDisplayPolicy CLOSE_BUTTON_MAX = 3

Rappresenta la dimensione dell'enumerazione CloseButtonDisplayPolicy.


Descrizioni delle proprietà

bool clip_tabs = true 🔗

  • void set_clip_tabs(value: bool)

  • bool get_clip_tabs()

Se true, le schede che superano la larghezza di questo nodo saranno nascoste, visualizzando invece due pulsanti di navigazione. Altrimenti, la dimensione minima di questo nodo è aggiustata in modo che tutte le schede siano visibili.


bool close_with_middle_mouse = true 🔗

  • void set_close_with_middle_mouse(value: bool)

  • bool get_close_with_middle_mouse()

If true, middle-clicking on a tab will emit the tab_close_pressed signal.


int current_tab = -1 🔗

  • void set_current_tab(value: int)

  • int get_current_tab()

L'indice della scheda attualmente selezionata. Un valore di -1 significa che nessuna scheda è selezionata e questo valore può essere impostato solo quando deselect_enabled è true o se tutte le schede sono nascoste o disabilitate.


bool deselect_enabled = false 🔗

  • void set_deselect_enabled(value: bool)

  • bool get_deselect_enabled()

Se true, tutte le schede possono essere deselezionate in modo che nessuna scheda sia selezionata. Clicca sulla scheda attuale per deselezionarla.


bool drag_to_rearrange_enabled = false 🔗

  • void set_drag_to_rearrange_enabled(value: bool)

  • bool get_drag_to_rearrange_enabled()

Se true, le schede possono essere riorganizzate trascinandole con il mouse.


int max_tab_width = 0 🔗

  • void set_max_tab_width(value: int)

  • int get_max_tab_width()

Imposta la larghezza massima alla quale devono essere limitate tutte le schede. Illimitato se impostato su 0.


bool scroll_to_selected = true 🔗

  • void set_scroll_to_selected(value: bool)

  • bool get_scroll_to_selected()

Se true, lo spostamento delle schede sarà modificato per mantenere visibile la scheda attualmente selezionata.


bool scrolling_enabled = true 🔗

  • void set_scrolling_enabled(value: bool)

  • bool get_scrolling_enabled()

se true, è possibile utilizzare la rotellina di scorrimento del mouse per navigare nella vista scorrevole.


bool select_with_rmb = false 🔗

  • void set_select_with_rmb(value: bool)

  • bool get_select_with_rmb()

Se true, consente di selezionare una scheda con il pulsante destro del mouse.


bool switch_on_drag_hover = true 🔗

  • void set_switch_on_drag_hover(value: bool)

  • bool get_switch_on_drag_hover()

If true, hovering over a tab while dragging something will switch to that tab. Does not have effect when hovering another tab to rearrange. The delay for when this happens is dictated by hover_switch_wait_msec.


AlignmentMode tab_alignment = 0 🔗

The horizontal alignment of the tabs.


CloseButtonDisplayPolicy tab_close_display_policy = 0 🔗

Quando il pulsante di chiusura apparirà sulle schede.


int tab_count = 0 🔗

  • void set_tab_count(value: int)

  • int get_tab_count()

Il numero di schede attualmente nella barra.


bool tab_{index}/disabled = false 🔗

If true, the tab at index is disabled.

Note: index is a value in the 0 .. tab_count - 1 range.


Texture2D tab_{index}/icon 🔗

If true, the tab at index is hidden.

Note: index is a value in the 0 .. tab_count - 1 range.


String tab_{index}/title = "" 🔗

The title text of the tab at index.

Note: index is a value in the 0 .. tab_count - 1 range.


String tab_{index}/tooltip = "" 🔗

The tooltip text of the tab at index.

Note: index is a value in the 0 .. tab_count - 1 range.


int tabs_rearrange_group = -1 🔗

  • void set_tabs_rearrange_group(value: int)

  • int get_tabs_rearrange_group()

Le TabBar con lo stesso ID di gruppo di riorganizzazione consentiranno di trascinare le schede tra di loro. Abilita il trascinamento con drag_to_rearrange_enabled.

Impostando questo su -1 sarà disabilitata la riorganizzazione tra le TabBar.


Descrizioni dei metodi

void add_tab(title: String = "", icon: Texture2D = null) 🔗

Aggiunge una nuova scheda.


void clear_tabs() 🔗

Cancella tutte le schede.


void ensure_tab_visible(idx: int) 🔗

Sposta la vista scorrevole per rendere visibile la scheda.


bool get_offset_buttons_visible() const 🔗

Restituisce true se i pulsanti di scostamento (quelli che compaiono quando non c'è abbastanza spazio per tutte le schede) sono visibili.


int get_previous_tab() const 🔗

Restituisce l'indice della scheda precedentemente attiva.


Texture2D get_tab_button_icon(tab_idx: int) const 🔗

Restituisce l'icona del pulsante destro della scheda all'indice tab_idx o null se il pulsante destro non ha un'icona.


Texture2D get_tab_icon(tab_idx: int) const 🔗

Restituisce l'icona della scheda all'indice tab_idx o null se la scheda non ha un'icona.


int get_tab_icon_max_width(tab_idx: int) const 🔗

Restituisce la larghezza massima consentita dell'icona per la scheda all'indice tab_idx.


int get_tab_idx_at_point(point: Vector2) const 🔗

Restituisce l'indice della scheda nelle coordinate locali point. Restituisce -1 se il punto è al di fuori dei limiti di controllo o se nessuna scheda è presente nella posizione interrogata.


String get_tab_language(tab_idx: int) const 🔗

Restituisce il codice di lingua del titolo della scheda.


Variant get_tab_metadata(tab_idx: int) const 🔗

Restituisce il valore dei metadati impostato sulla scheda all'indice tab_idx tramite set_tab_metadata(). Se non sono stati impostati metadati, restituisce null per impostazione predefinita.


int get_tab_offset() const 🔗

Restituisce il numero di schede nascoste spostate verso sinistra.


Rect2 get_tab_rect(tab_idx: int) const 🔗

Restituisce il Rect2 della scheda con la posizione e le dimensioni locali.


TextDirection get_tab_text_direction(tab_idx: int) const 🔗

Restituisce la direzione di scrittura di testo base del titolo della scheda.


String get_tab_title(tab_idx: int) const 🔗

Restituisce il titolo della scheda all'indice tab_idx.


String get_tab_tooltip(tab_idx: int) const 🔗

Restituisce il testo del tooltip della scheda all'indice tab_idx.


bool is_tab_disabled(tab_idx: int) const 🔗

Restituisce true se la scheda all'indice tab_idx è disabilitata.


bool is_tab_hidden(tab_idx: int) const 🔗

Restituisce true se la scheda all'indice tab_idx è nascosta.


void move_tab(from: int, to: int) 🔗

Muove una scheda da from a to.


void remove_tab(tab_idx: int) 🔗

Rimuove la scheda all'indice tab_idx.


bool select_next_available() 🔗

Seleziona la prima scheda disponibile con un indice maggiore di quella attualmente selezionata. Restituisce true se la selezione della scheda è cambiata.


bool select_previous_available() 🔗

Seleziona la prima scheda disponibile con un indice minore di quella attualmente selezionata. Restituisce true se la selezione della scheda è cambiata.


void set_tab_button_icon(tab_idx: int, icon: Texture2D) 🔗

Imposta una icona (icon) per il pulsante della scheda all'indice tab_idx (situato a destra, prima del pulsante di chiusura), rendendolo visibile e cliccabile (vedi tab_button_pressed). Assegnandogli un valore null il pulsante sarà nascosto.


void set_tab_disabled(tab_idx: int, disabled: bool) 🔗

Se disabled è true, disabilita la scheda all'indice tab_idx, rendendola non interattiva.


void set_tab_hidden(tab_idx: int, hidden: bool) 🔗

Se hidden è true, nasconde la scheda all'indice tab_idx, facendola scomparire dall'area della scheda.


void set_tab_icon(tab_idx: int, icon: Texture2D) 🔗

Imposta un'icona icon per la scheda all'indice tab_idx.


void set_tab_icon_max_width(tab_idx: int, width: int) 🔗

Imposta la larghezza massima consentita dell'icona per la scheda all'indice tab_idx. Questo limite viene applicato al di sopra della dimensione predefinita dell'icona e sopra a icon_max_width. L'altezza è regolata in base al rapporto dell'icona.


void set_tab_language(tab_idx: int, language: String) 🔗

Sets the language code of the title for the tab at index tab_idx to language. This is used for line-breaking and text shaping algorithms. If language is empty, the current locale is used.


void set_tab_metadata(tab_idx: int, metadata: Variant) 🔗

Imposta il valore dei metadati per la scheda all'indice tab_idx, che può essere recuperato in seguito tramite get_tab_metadata().


void set_tab_text_direction(tab_idx: int, direction: TextDirection) 🔗

Imposta la direzione di scrittura di testo base del titolo della scheda.


void set_tab_title(tab_idx: int, title: String) 🔗

Imposta un titolo title per la scheda all'indice tab_idx.


void set_tab_tooltip(tab_idx: int, tooltip: String) 🔗

Imposta un tooltip per la scheda all'indice tab_idx.

Nota: Per impostazione predefinita, se il tooltip è vuoto e il testo della scheda è troncato (non tutti i caratteri entrano nella scheda), il titolo sarà visualizzato come tooltip. Per nascondere il tooltip, assegna " " come testo del tooltip.


Descrizioni delle proprietà del tema

Color drop_mark_color = Color(1, 1, 1, 1) 🔗

Il colore di modulazione per l'icona drop_mark.


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

Il colore del font delle schede disabilitate.


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

Il colore del font della scheda al passaggio del mouse. Non si applica alla scheda selezionata.


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

La tinta del contorno del testo per il nome della scheda.


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

Il colore del font della scheda attualmente selezionata.


Color font_unselected_color = Color(0.7, 0.7, 0.7, 1) 🔗

Il colore del font delle altre schede non selezionate.


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.


int h_separation = 4 🔗

La separazione orizzontale tra gli elementi all'interno delle schede.


int hover_switch_wait_msec = 500 🔗

During a drag-and-drop, this is how many milliseconds to wait before switching the tab.


int icon_max_width = 0 🔗

La larghezza massima consentita dell'icona della scheda. Questo limite è applicato al di sopra della dimensione predefinita dell'icona, ma prima del valore impostato con set_tab_icon_max_width(). L'altezza è regolata in base al rapporto dell'icona.


int outline_size = 0 🔗

La dimensione del contorno del testo della scheda.

Nota: Se si utilizza un font con FontFile.multichannel_signed_distance_field abilitato, il suo FontFile.msdf_pixel_range deve essere impostato su almeno il doppio del valore di outline_size affinché il rendering del contorno appaia corretto. Altrimenti, il contorno potrebbe apparire troncato prima del previsto.


int tab_separation = 0 🔗

La spaziatura tra le schede nella barra di schede.


Font font 🔗

Il font utilizzato per disegnare i nomi delle schede.


int font_size 🔗

La dimensione del font dei nomi delle schede.


Texture2D close 🔗

L'icona per il pulsante di chiusura (vedi tab_close_display_policy).


Texture2D decrement 🔗

L'icona per il pulsante freccia sinistra che appare quando ci sono troppe schede per adattarsi alla larghezza del contenitore. Quando il pulsante è disabilitato (ovvero la prima scheda è visibile), appare semi-trasparente.


Texture2D decrement_highlight 🔗

L'icona per il pulsante freccia sinistra che appare quando ci sono troppe schede per adattarsi alla larghezza del contenitore. Utilizzato quando si passa il cursore sul pulsante.


Texture2D drop_mark 🔗

Icon shown to indicate where a dragged tab will be dropped (see drag_to_rearrange_enabled).


Texture2D increment 🔗

L'icona per il pulsante freccia destra che appare quando ci sono troppe schede per adattarsi alla larghezza del contenitore. Quando il pulsante è disabilitato (ovvero l'ultima scheda è visibile), appare semi-trasparente.


Texture2D increment_highlight 🔗

L'icona per il pulsante freccia destro che appare quando ci sono troppe schede per adattarsi alla larghezza del contenitore. Utilizzato quando si passa il cursore sul pulsante.


StyleBox button_highlight 🔗

Lo sfondo della scheda e dei pulsanti di chiusura quando ci si passa sopra con il cursore.


StyleBox button_pressed 🔗

Lo sfondo della scheda e dei pulsanti di chiusura quando vengono premuti.


StyleBox tab_disabled 🔗

Lo stile delle schede disabilitate.


StyleBox tab_focus 🔗

Lo StyleBox utilizzato quando il TabBar è focalizzato. Lo StyleBox di tab_focus è visualizzato sopra lo StyleBox di base, quindi è necessario utilizzare uno StyleBox parzialmente trasparente per garantire che lo StyleBox di base rimanga visibile. Uno StyleBox che rappresenta un contorno o una sottolineatura funziona bene per questo scopo. Per disabilitare l'effetto visivo del focus, assegna una risorsa StyleBoxEmpty. Tieni presente che disattivare l'effetto visivo di focus ridurrà l'usabilità della navigazione tramite tastiera o controller, perciò non è consigliato per motivi di accessibilità.


StyleBox tab_hovered 🔗

Lo stile della scheda attualmente visualizzata. Non si applica alla scheda selezionata.

Nota: Questo stile sarà disegnato con la stessa larghezza di tab_unselected come minimo.


StyleBox tab_selected 🔗

Lo stile della scheda attualmente selezionata.


StyleBox tab_unselected 🔗

Lo stile delle altre schede non selezionate.