OptionButton

Eredita: Button < BaseButton < Control < CanvasItem < Node < Object

Un pulsante che, se premuto, apre un menu a tendina con opzioni selezionabili.

Descrizione

OptionButton è un tipo di pulsante che apre un menu a tendina con elementi selezionabili quando viene premuto. L'elemento selezionato diventa l'elemento "attuale" e viene visualizzato come testo del pulsante.

Vedi anche BaseButton che contiene proprietà e metodi comuni associati a questo nodo.

Nota: Gli ID utilizzati per gli elementi sono interi a 32 bit, non a 64 bit pieni di int. Questi hanno un intervallo di -2^32 a 2^32 - 1, ovvero, -2147483648 a 2147483647.

Nota: Le proprietà Button.text e Button.icon sono impostate automaticamente in base all'elemento selezionato. Non si dovrebbero cambiare manualmente.

Proprietà

ActionMode

action_mode

0 (overrides BaseButton)

HorizontalAlignment

alignment

0 (overrides Button)

bool

allow_reselect

false

bool

fit_to_longest_item

true

int

item_count

0

int

selected

-1

bool

toggle_mode

true (overrides BaseButton)

Metodi

void

add_icon_item(texture: Texture2D, label: String, id: int = -1)

void

add_item(label: String, id: int = -1)

void

add_separator(text: String = "")

void

clear()

AutoTranslateMode

get_item_auto_translate_mode(idx: int) const

Texture2D

get_item_icon(idx: int) const

int

get_item_id(idx: int) const

int

get_item_index(id: int) const

Variant

get_item_metadata(idx: int) const

String

get_item_text(idx: int) const

String

get_item_tooltip(idx: int) const

PopupMenu

get_popup() const

int

get_selectable_item(from_last: bool = false) const

int

get_selected_id() const

Variant

get_selected_metadata() const

bool

has_selectable_items() const

bool

is_item_disabled(idx: int) const

bool

is_item_separator(idx: int) const

void

remove_item(idx: int)

void

select(idx: int)

void

set_disable_shortcuts(disabled: bool)

void

set_item_auto_translate_mode(idx: int, mode: AutoTranslateMode)

void

set_item_disabled(idx: int, disabled: bool)

void

set_item_icon(idx: int, texture: Texture2D)

void

set_item_id(idx: int, id: int)

void

set_item_metadata(idx: int, metadata: Variant)

void

set_item_text(idx: int, text: String)

void

set_item_tooltip(idx: int, tooltip: String)

void

show_popup()

Proprietà del tema

int

arrow_margin

4

int

modulate_arrow

0

Texture2D

arrow


Segnali

item_focused(index: int) 🔗

Emesso quando l'utente passa a un elemento utilizzando le azioni di input ProjectSettings.input/ui_up o ProjectSettings.input/ui_down. L'indice dell'elemento selezionato viene passato come argomento.


item_selected(index: int) 🔗

Emesso quando l'elemento attuale è stato cambiato dall'utente. L'indice dell'elemento selezionato viene passato come argomento.

allow_reselect deve essere abilitato per selezionare lo stesso elemento di nuovo.


Descrizioni delle proprietà

bool allow_reselect = false 🔗

  • void set_allow_reselect(value: bool)

  • bool get_allow_reselect()

Se true, l'elemento attualmente selezionato può essere selezionato nuovamente.


bool fit_to_longest_item = true 🔗

  • void set_fit_to_longest_item(value: bool)

  • bool is_fit_to_longest_item()

Se true, la dimensione minima sarà determinata dal testo dell'elemento più lungo, invece che da quello attualmente selezionato.

Nota: Per motivi di prestazioni, la dimensione minima non si aggiorna subito quando si aggiungono, rimuovono o modificano elementi.


int item_count = 0 🔗

  • void set_item_count(value: int)

  • int get_item_count()

Il numero di elementi tra cui selezionare.


int selected = -1 🔗

  • int get_selected()

Indice dell'elemento attualmente selezionato, oppure -1 se nessun elemento è selezionato.


Descrizioni dei metodi

void add_icon_item(texture: Texture2D, label: String, id: int = -1) 🔗

Aggiunge un elemento, con un'icona texture, testo label e (facoltativamente) id. Se nessun id viene passato, l'indice dell'elemento sarà utilizzato come ID dell'elemento. I nuovi elementi vengono aggiunti alla fine.

Nota: L'elemento verrà selezionato se non ci sono altri elementi.


void add_item(label: String, id: int = -1) 🔗

Aggiunge un elemento, con testo label e (facoltativamente) id. Se nessun id viene passato, l'indice dell'elemento sarà utilizzato come ID dell'elemento. I nuovi elementi vengono aggiunti alla fine.

Nota: L'elemento verrà selezionato se non ci sono altri elementi.


void add_separator(text: String = "") 🔗

Aggiunge un separatore alla lista di elementi. I separatori aiutano a raggruppare gli elementi e possono essere facoltativamente dotati di un'intestazione text. A un separatore è anche assegnato un indice e viene aggiunto alla fine della lista di elementi.


void clear() 🔗

Cancella tutti gli elementi nell'OptionButton.


AutoTranslateMode get_item_auto_translate_mode(idx: int) const 🔗

Restituisce la modalità di traduzione automatica dell'elemento all'indice idx.


Texture2D get_item_icon(idx: int) const 🔗

Restituisce l'icona dell'elemento all'indice idx.


int get_item_id(idx: int) const 🔗

Restituisce l'ID dell'elemento all'indice idx.


int get_item_index(id: int) const 🔗

Restituisce l'indice dell'elemento con l'id specificato.


Variant get_item_metadata(idx: int) const 🔗

Recupera i metadati di un elemento. I metadati possono essere di qualunque tipo e possono essere utilizzati per memorizzare ulteriori informazioni su un elemento, come un ID esterno.


String get_item_text(idx: int) const 🔗

Restituisce il testo dell'elemento all'indice idx.


String get_item_tooltip(idx: int) const 🔗

Restituisce il tooltip dell'elemento all'indice idx.


PopupMenu get_popup() const 🔗

Restituisce il PopupMenu contenuto in questo pulsante.

Warning: Questo è un nodo interno obbligatorio, rimuoverlo e liberarlo potrebbe causare un arresto anomalo. Se desideri nasconderlo o nascondere uno dei suoi figli, usa la loro proprietà Window.visible.


int get_selectable_item(from_last: bool = false) const 🔗

Restituisce l'indice del primo elemento che non è disabilitato o contrassegnato come separatore. Se from_last è true, gli elementi saranno cercati in ordine inverso.

Restituisce -1 se non viene trovato alcun elemento.


int get_selected_id() const 🔗

Restituisce l'ID dell'elemento selezionato oppure -1 se nessun elemento è selezionato.


Variant get_selected_metadata() const 🔗

Ottiene i metadati dell'elemento selezionato. I metadati per gli elementi possono essere impostati utilizzando set_item_metadata().


bool has_selectable_items() const 🔗

Restituisce true se questo pulsante contiene almeno un elemento che non è disabilitato, o contrassegnato come separatore.


bool is_item_disabled(idx: int) const 🔗

Restituisce true se l'elemento all'indice idx è disabilitato.


bool is_item_separator(idx: int) const 🔗

Restituisce true se l'elemento all'indice idx è contrassegnato come separatore.


void remove_item(idx: int) 🔗

Rimuove l'elemento all'indice idx.


void select(idx: int) 🔗

Seleziona un elemento per indice e lo rende l'elemento attuale. Funzionerà anche se l'elemento è disabilitato.

Passando -1 come indice deseleziona qualunque elemento attualmente selezionato.


void set_disable_shortcuts(disabled: bool) 🔗

Se true, le scorciatoie sono disabilitate e non possono essere utilizzate per attivare il pulsante.


void set_item_auto_translate_mode(idx: int, mode: AutoTranslateMode) 🔗

Imposta la modalità di traduzione automatica dell'elemento all'indice idx.

Gli elementi utilizzano Node.AUTO_TRANSLATE_MODE_INHERIT come predefinito, il quale utilizza la stessa modalità di traduzione automatica dell'OptionButton stesso.


void set_item_disabled(idx: int, disabled: bool) 🔗

Imposta se l'elemento all'indice idx è disabilitato.

Gli elementi disabilitati sono disegnati in modo diverso nel menu a tendina e non sono selezionabili dall'utente. Se l'elemento attualmente selezionato è viene disabilitato, rimarrà comunque selezionato.


void set_item_icon(idx: int, texture: Texture2D) 🔗

Imposta l'icona dell'elemento all'indice idx.


void set_item_id(idx: int, id: int) 🔗

Imposta l'ID dell'elemento all'indice idx.


void set_item_metadata(idx: int, metadata: Variant) 🔗

Imposta i metadati di un elemento. I metadati possono essere di qualunque tipo e possono essere utilizzati per memorizzare ulteriori informazioni su un elemento, come un ID esterno.


void set_item_text(idx: int, text: String) 🔗

Imposta il testo dell'elemento all'indice idx.


void set_item_tooltip(idx: int, tooltip: String) 🔗

Imposta il tooltip dell'elemento all'indice idx.


void show_popup() 🔗

Regola la posizione e le dimensioni di popup per OptionButton, poi mostra il PopupMenu. Preferisci usare questo metodo piuttosto che get_popup().popup().


Descrizioni delle proprietà del tema

int arrow_margin = 4 🔗

Lo spazio orizzontale tra l'icona della freccia e il bordo destro del pulsante.


int modulate_arrow = 0 🔗

Se diverso da 0, l'icona della freccia sarà modulata in base al colore del font.


Texture2D arrow 🔗

L'icona della freccia da disegnare all'estremità destra del pulsante.