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...
ItemList
Eredita: Control < CanvasItem < Node < Object
Un elenco verticale di voci selezionabili con una o più colonne.
Descrizione
Questo controllo fornisce un elenco verticale di voci selezionabili che possono essere in una o più colonne, con ogni voce con opzioni per il testo e un'icona. I tooltip sono supportati e possono essere diversi per ogni voce nell'elenco.
È possibile selezionare o deselezionare le voci selezionabili nell'elenco, e abilitare la selezione multipla. La selezione con il pulsante destro del mouse può anche essere abilitata per consentire l'uso di menu contestuali a comparsa. È possibile inoltre "attivare" le voci cliccando due volte su di essi o premendo Invio.
Il testo di una voce supporta solo stringhe a riga singola. I caratteri di nuova riga (ad esempio \n) nella stringa non produrranno una nuova riga. L'avvolgimento del testo è abilitata in modalità ICON_MODE_TOP, ma normalmente la larghezza della colonna è regolata per adattarsi completamente al suo contenuto. È necessario impostare fixed_column_width maggiore di zero per avvolgere il testo.
Tutti i metodi set_* consentono gli indici negativi per le voci, ad esempio -1 per accedere all'ultima voce, -2 per accedere alla penultima voce e così via.
Ricerca incrementale: Come PopupMenu e Tree, ItemList supporta la ricerca all'interno dell'elenco mentre il controllo è attivo. Premi un tasto che corrisponde alla prima lettera del nome di una voce per selezionare la prima voce che inizia con la lettera specificata. Dopo quel punto, ci sono due modi per eseguire la ricerca incrementale: 1) Premi di nuovo lo stesso tasto prima della durata del timeout per selezionare la voce successiva che inizia con la stessa lettera. 2) Premi i tasti delle lettere che corrispondono al resto della parola prima della durata del timeout per selezionare direttamente la voce in questione. Entrambe queste azioni verranno ripristinate all'inizio dell'elenco se la durata del timeout è trascorsa dall'ultima pressione di un tasto. È possibile regolare la durata del timeout modificando ProjectSettings.gui/timers/incremental_search_max_interval_msec.
Proprietà
|
||
|
||
|
||
|
||
|
||
clip_contents |
|
|
|
||
|
||
focus_mode |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Metodi
Proprietà del tema
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Segnali
empty_clicked(at_position: Vector2, mouse_button_index: int) 🔗
Attivato quando si clicca con il mouse all'interno del rettangolo dell'elenco ma su uno spazio vuoto.
at_position è la posizione del clic nel sistema di coordinate locali di questo controllo.
Emesso quando una determinata voce nell'elenco viene attivata tramite doppio clic o premendo Invio.
item_clicked(index: int, at_position: Vector2, mouse_button_index: int) 🔗
Emesso quando una determinata voce nell'elenco è stata cliccata con un qualsiasi pulsante del mouse.
at_position è la posizione del clic nel sistema di coordinate locali di questo controllo.
Emesso quando una determinata voce è stata selezionata. Applicabile solo in modalità di selezione singola.
allow_reselect deve essere abilitato per selezionare nuovamente la stessa voce.
multi_selected(index: int, selected: bool) 🔗
Emesso quando viene alterata una selezione multipla in un elenco che consente la selezione multipla.
Enumerazioni
enum IconMode: 🔗
IconMode ICON_MODE_TOP = 0
L'icona è disegnata sopra il testo.
IconMode ICON_MODE_LEFT = 1
L'icona è disegnata a sinistra del testo.
enum SelectMode: 🔗
SelectMode SELECT_SINGLE = 0
Permette la selezione di una sola voce.
SelectMode SELECT_MULTI = 1
Consente di selezionare più voci tenendo premuto Ctrl o Maiusc.
SelectMode SELECT_TOGGLE = 2
Consente di selezionare più voci attivandole e disattivandole.
enum ScrollHintMode: 🔗
ScrollHintMode SCROLL_HINT_MODE_DISABLED = 0
Gli indicatori di scorrimento non appariranno mai.
ScrollHintMode SCROLL_HINT_MODE_BOTH = 1
Gli indicatori di scorrimento appariranno in alto e in basso.
ScrollHintMode SCROLL_HINT_MODE_TOP = 2
Solo l'indicatore di scorrimento in alto apparirà.
ScrollHintMode SCROLL_HINT_MODE_BOTTOM = 3
Solo l'indicatore di scorrimento in basso apparirà.
Descrizioni delle proprietà
Se true, la voce attualmente selezionata può essere selezionata nuovamente.
bool allow_rmb_select = false 🔗
Se true, un clic destro può selezionare le voci.
Se true, consente di navigare con i tasti di lettera attraverso la ricerca incrementale.
Se true, l'altezza del controllo sarà automaticamente regolata per adattarsi all'altezza del contenuto.
Se true, il controllo ridimensionerà automaticamente la sua larghezza per adattarla al suo contenuto.
La larghezza a cui saranno regolate tutte le colonne.
Un valore di zero disabilita la regolazione, ogni voce avrà una larghezza uguale alla larghezza del suo contenuto e le colonne avranno una larghezza non uniforme.
Vector2i fixed_icon_size = Vector2i(0, 0) 🔗
Le dimensioni a cui saranno adattate tutte le icone.
Se uno dei componenti X o Y non è maggiore di zero, le dimensioni dell'icona non saranno influenzate.
La posizione dell'icona, se sopra o a sinistra del testo. Vedi le costanti di IconMode.
La scala dell'icona applicata dopo fixed_icon_size e dopo che la trasposizione abbia effetto.
Il numero di voci attualmente nell'elenco.
bool item_{index}/disabled = false 🔗
Se true, la voce all'indice index è disabilitata.
Note: index è un valore compreso nell'intervallo 0 .. item_count - 1.
L'icona della voce all'indice index.
Note: index è un valore compreso nell'intervallo 0 .. item_count - 1.
bool item_{index}/selectable = true 🔗
Se true, la voce all'indice index è selezionabile.
Note: index è un valore compreso nell'intervallo 0 .. item_count - 1.
String item_{index}/text = "" 🔗
Il testo della voce all'indice index.
Note: index è un valore compreso nell'intervallo 0 .. item_count - 1.
Numero massimo di colonne che l'elenco avrà.
Se maggiore di zero, il contenuto sarà suddiviso tra le colonne specificate.
Un valore di zero significa colonne illimitate, ovvero tutte le voci saranno inserite nella stessa riga.
Numero massimo di righe di testo consentite in ogni voce. Lo spazio sarà riservato anche quando non ci sono abbastanza righe di testo da visualizzare.
Nota: Questa proprietà ha effetto solo quando icon_mode è ICON_MODE_TOP. Per garantire che il testo si avvolga, fixed_column_width deve essere maggiore di zero.
bool same_column_width = false 🔗
Se tutte le colonne avranno la stessa larghezza.
Se true, la larghezza è uguale alla larghezza della colonna più grande di tutte le colonne.
ScrollHintMode scroll_hint_mode = 0 🔗
void set_scroll_hint_mode(value: ScrollHintMode)
ScrollHintMode get_scroll_hint_mode()
Il modo in cui appaiono gli indicatori di scorrimento (indicatori che mostrano che il contenuto si può ancora scorrere in una determinata direzione).
SelectMode select_mode = 0 🔗
void set_select_mode(value: SelectMode)
SelectMode get_select_mode()
Permette la selezione di una o più voci. Vedi le costanti di SelectMode.
OverrunBehavior text_overrun_behavior = 3 🔗
void set_text_overrun_behavior(value: OverrunBehavior)
OverrunBehavior get_text_overrun_behavior()
Il comportamento di ritaglio quando il testo supera il rettangolo di delimitazione di una voce.
bool tile_scroll_hint = false 🔗
Se true, la texture degli indicatori di scorrimento sarà ripetuta anziché allungata. Vedi scroll_hint_mode.
bool wraparound_items = true 🔗
Se true, il controllo sposterà automaticamente le voci in una nuova riga per adattarne il contenuto. Vedi anche HFlowContainer per questo comportamento.
Se false, il controllo aggiungerà una barra di scorrimento orizzontale per rendere visibili tutte le voci.
Descrizioni dei metodi
int add_icon_item(icon: Texture2D, selectable: bool = true) 🔗
Aggiunge una voce all'elenco delle voci, senza testo, solo un'icona. Restituisce l'indice di una voce aggiunta.
int add_item(text: String, icon: Texture2D = null, selectable: bool = true) 🔗
Aggiunge una voce all'elenco delle voci, con il testo specificato. Restituisce l'indice di una voce aggiunta.
Specifica un icon, oppure usa null come icon per una voce senza icona.
Se selectable è true, la voce sarà selezionabile.
void center_on_current(center_verically: bool = true, center_horizontally: bool = true) 🔗
Garantisce la visibilità della voce attualmente selezionata (la prima voce selezionato se la selezione multipla è abilitata), regolando la posizione di scorrimento se necessario per posizionare la voce al centro dell'elenco, se possibile. Vedi anche ensure_current_is_visible().
Se entrambi gli argomenti sono false, fallisce e stampa un errore.
void clear() 🔗
Rimuove tutte le voci dall'elenco.
Assicura che la voce associata all'indice specificato non sia selezionata.
void deselect_all() 🔗
Assicura che nessuna voce sia selezionata.
void ensure_current_is_visible() 🔗
Garantisce la visibilità della voce attualmente selezionata (la prima voce selezionata se la selezione multipla è abilitata), regolando la posizione di scorrimento se necessario. Vedi anche center_on_current().
void force_update_list_size() 🔗
Forza un aggiornamento delle dimensioni dell'elenco in base alle sue voci. Ciò avviene automaticamente ogni volta che le dimensioni delle voci o altre impostazioni rilevanti come auto_height cambiano. Il metodo può servire per attivare l'aggiornamento prima del passaggio successivo di disegno.
HScrollBar get_h_scroll_bar() 🔗
Restituisce la barra di scorrimento orizzontale.
Attenzione: Questo è un nodo interno obbligatorio, rimuoverlo e liberarlo potrebbe causare un arresto anomalo. Se si desidera nasconderlo o nascondere uno dei suoi figli, usa la loro proprietà CanvasItem.visible.
int get_item_at_position(position: Vector2, exact: bool = false) const 🔗
Restituisce l'indice della voce nella posizione position.
Se non c'è alcuna voce in quel punto, verrà restituito -1 se exact è true, altrimenti verrà restituito l'indice della voce più vicina.
Nota: Il valore restituito non è affidabile se chiamato subito dopo aver modificato l'ItemList, prima che sia ridisegnato nel frame successivo.
AutoTranslateMode get_item_auto_translate_mode(idx: int) const 🔗
Restituisce la modalità di traduzione automatica della voce.
Color get_item_custom_bg_color(idx: int) const 🔗
Restituisce il colore di sfondo personalizzato della voce specificata dall'indice idx.
Color get_item_custom_fg_color(idx: int) const 🔗
Restituisce il colore di primo piano personalizzato della voce specificata dall'indice idx.
Texture2D get_item_icon(idx: int) const 🔗
Restituisce l'icona associata all'indice specificato.
Color get_item_icon_modulate(idx: int) const 🔗
Restituisce il Color che modula l'icona della voce all'indice specificato.
Rect2 get_item_icon_region(idx: int) const 🔗
Restituisce la regione utilizzata dell'icona della voce. Se la regione non ha area, l'intera icona sarà utilizzata.
String get_item_language(idx: int) const 🔗
Restituisce il codice lingua del testo per la voce.
Variant get_item_metadata(idx: int) const 🔗
Restituisce il valore dei metadati dell'indice specificato.
Rect2 get_item_rect(idx: int, expand: bool = true) const 🔗
Restituisce la posizione e le dimensioni della voce con l'indice specificato, nel sistema di coordinate del nodo ItemList. Se expand è true l'ultima colonna si espande per riempire il resto della riga.
Nota: Il valore restituito non è affidabile se chiamato subito dopo aver modificato l'ItemList, prima che sia ridisegnato nel frame successivo.
String get_item_text(idx: int) const 🔗
Restituisce il testo associato all'indice specificato.
TextDirection get_item_text_direction(idx: int) const 🔗
Restituisce la direzione base di scrittura per il testo della voce.
String get_item_tooltip(idx: int) const 🔗
Restituisce il testo del tooltip associato all'indice specificato.
PackedInt32Array get_selected_items() 🔗
Restituisce un array con gli indici delle voci selezionate.
VScrollBar get_v_scroll_bar() 🔗
Restituisce la barra di scorrimento verticale.
Attenzione: Questo è un nodo interno obbligatorio, rimuoverlo e liberarlo potrebbe causare un arresto anomalo. Se si desidera nasconderlo o nascondere uno dei suoi figli, usa la loro proprietà CanvasItem.visible.
Restituisce true se una o più voci sono selezionate.
bool is_item_disabled(idx: int) const 🔗
Restituisce true se la voce all'indice specificato è disabilitata.
bool is_item_icon_transposed(idx: int) const 🔗
Restituisce true se l'icona dell'oggetto sarà disegnata trasposta, ovvero gli assi X e Y sono scambiati.
bool is_item_selectable(idx: int) const 🔗
Restituisce true se la voce all'indice specificato è selezionabile.
bool is_item_tooltip_enabled(idx: int) const 🔗
Restituisce true se il tooltip è abilitato per la voce all'indice specificato.
bool is_selected(idx: int) const 🔗
Restituisce true se la voce all'indice specificato è attualmente selezionata.
void move_item(from_idx: int, to_idx: int) 🔗
Sposta la voce dall'indice from_idx all'indice to_idx.
Rimuove la voce specificata dall'indice idx dall'elenco.
void select(idx: int, single: bool = true) 🔗
Seleziona la voce all'indice specificato.
Nota: Questo metodo non attiva il segnale di selezione della voce.
void set_item_auto_translate_mode(idx: int, mode: AutoTranslateMode) 🔗
Imposta la modalità di traduzione automatica della voce associata all'indice specificato.
Le voci utilizzano Node.AUTO_TRANSLATE_MODE_INHERIT come predefinito, la quale utilizza la stessa modalità di traduzione automatica dell'ItemList.
void set_item_custom_bg_color(idx: int, custom_bg_color: Color) 🔗
Imposta il colore di sfondo della voce specificata dall'indice idx sul Color specificato.
void set_item_custom_fg_color(idx: int, custom_fg_color: Color) 🔗
Imposta il colore di primo piano della voce specificata dall'indice idx sul Color specificato.
void set_item_disabled(idx: int, disabled: bool) 🔗
Disabilita (o abilita) la voce all'indice specificato.
Le voci disabilitate non possono essere selezionate e non attivano segnali di attivazione (quando si clicca due volte o si preme Invio).
void set_item_icon(idx: int, icon: Texture2D) 🔗
Imposta (o sostituisce) l'icona Texture2D associata all'indice specificato.
void set_item_icon_modulate(idx: int, modulate: Color) 🔗
Imposta un Color di modulazione della voce associata all'indice specificato.
void set_item_icon_region(idx: int, rect: Rect2) 🔗
Imposta la regione utilizzata dell'icona della voce. Sarà utilizzata l'intera icona se la regione non ha area.
void set_item_icon_transposed(idx: int, transposed: bool) 🔗
Imposta se l'icona della voce sarà disegnata trasposta.
void set_item_language(idx: int, language: String) 🔗
Imposta il codice lingua del testo della voce all'indice specificato su language. Serve per gli algoritmi di interruzione di riga e di formazione del testo. Se language è vuoto, viene utilizzata la localizzazione attuale.
void set_item_metadata(idx: int, metadata: Variant) 🔗
Imposta un valore (di qualsiasi tipo) da memorizzare con la voce associata all'indice specificato.
void set_item_selectable(idx: int, selectable: bool) 🔗
Permette o impedisce la selezione della voce associata all'indice specificato.
void set_item_text(idx: int, text: String) 🔗
Imposta il testo della voce associata all'indice specificato.
void set_item_text_direction(idx: int, direction: TextDirection) 🔗
Imposta la direzione base di scrittura del testo per la voce.
void set_item_tooltip(idx: int, tooltip: String) 🔗
Imposta il testo del tooltip per la voce associata all'indice specificato.
void set_item_tooltip_enabled(idx: int, enable: bool) 🔗
Imposta se il tooltip è abilitato per l'indice della voce specificata.
void sort_items_by_text() 🔗
Ordina le voci nell'elenco in base al loro testo.
Descrizioni delle proprietà del tema
Color font_color = Color(0.65, 0.65, 0.65, 1) 🔗
Il Color predefinito del testo della voce.
Color font_hovered_color = Color(0.95, 0.95, 0.95, 1) 🔗
Il Color del testo utilizzato quando si passa il mouse sulla voce e non è ancora selezionata.
Color font_hovered_selected_color = Color(1, 1, 1, 1) 🔗
Il Color del testo utilizzato quando si passa il mouse sulla voce ed è selezionata.
Color font_outline_color = Color(0, 0, 0, 1) 🔗
La tinta del contorno di testo della voce.
Color font_selected_color = Color(1, 1, 1, 1) 🔗
Il Color del testo utilizzato quando la voce è selezionata, ma il mouse non vi è sopra.
Color guide_color = Color(0.7, 0.7, 0.7, 0.25) 🔗
Il Color della linea guida. La linea guida è una linea tracciata tra ogni riga di voci.
Color scroll_hint_color = Color(0, 0, 0, 1) 🔗
Color utilizzato per modulare la texture scroll_hint.
La spaziatura orizzontale tra le voci.
La spaziatura tra l'icona della voce e il testo.
La spaziatura verticale tra ogni riga di testo.
La dimensione del contorno del testo della voce.
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.
La spaziatura verticale tra le voci.
Il Font del testo della voce.
La dimensione del testo della voce.
L'indicatore che apparirà quando il contenuto si può ancora scorrere. Vedi scroll_hint_mode.
Lo StyleBox utilizzato per il cursore, quando l'ItemList è focalizzato.
Lo StyleBox utilizzato per il cursore, quando l'ItemList è non è focalizzato.
Lo stile focalizzato per l'ItemList, disegnato sopra ogni cosa.
Lo StyleBox per le voci su cui si passa il mouse, ma non sono selezionate.
Lo StyleBox per le voci selezionate e passate dal mouse, quando l'ItemList non è focalizzato.
StyleBox hovered_selected_focus 🔗
Lo StyleBox per le voci selezionate e passate dal mouse, quando l'ItemList è focalizzato.
Lo stile di sfondo per l'ItemList.
Lo StyleBox per le voci selezionate, quando l'ItemList non è focalizzato.
Lo StyleBox per le voci selezionate, quando l'ItemList è focalizzato.