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.

Range

Eredita: Control < CanvasItem < Node < Object

Ereditato da: EditorSpinSlider, ProgressBar, ScrollBar, Slider, SpinBox, TextureProgressBar

Classe di base astratta per i controlli che rappresentano un numero all'interno di un intervallo.

Descrizione

Range è una classe di base astratta per i controlli che rappresentano un numero all'interno di un intervallo, utilizzando un passo (step) e dimensioni di pagina (page) configurati. Vedi ad esempio ScrollBar e Slider per esempi di nodi di livello superiore che usano Range.

Proprietà

bool

allow_greater

false

bool

allow_lesser

false

bool

exp_edit

false

float

max_value

100.0

float

min_value

0.0

float

page

0.0

float

ratio

bool

rounded

false

BitField[SizeFlags]

size_flags_vertical

0 (overrides Control)

float

step

0.01

float

value

0.0

Metodi

void

_value_changed(new_value: float) virtual

void

set_value_no_signal(value: float)

void

share(with: Node)

void

unshare()


Segnali

changed() 🔗

Emesso quando min_value, max_value, page, o step cambia.


value_changed(value: float) 🔗

Emesso quando cambia value. Quando usato su uno Slider, viene chiamato continuamente durante il trascinamento (potenzialmente ogni frame). Se si esegue un'operazione costosa in una funzione connessa a value_changed, considera di usare un Timer antirimbalzo per richiamare la funzione meno spesso.

Nota: A differenza di segnali come LineEdit.text_changed, value_changed viene emesso anche quando value viene impostato direttamente tramite codice.


Descrizioni delle proprietà

bool allow_greater = false 🔗

  • void set_allow_greater(value: bool)

  • bool is_greater_allowed()

Se true, value può essere maggiore di max_value.


bool allow_lesser = false 🔗

  • void set_allow_lesser(value: bool)

  • bool is_lesser_allowed()

Se true, value può essere minore di min_value.


bool exp_edit = false 🔗

  • void set_exp_ratio(value: bool)

  • bool is_ratio_exp()

Se true, e min_value è maggiore o uguale a 0, value sarà rappresentato in modo esponenziale anziché lineare.


float max_value = 100.0 🔗

Valore massimo. L'intervallo è limitato se value è maggiore di max_value.


float min_value = 0.0 🔗

Valore minimo. L'intervallo è limitato se value è minore di min_value.


float page = 0.0 🔗

Dimensione di pagina. Utilizzato principalmente per ScrollBar. La lunghezza del grabber di una ScrollBar è la sua dimensione moltiplicata per page sulla differenza tra min_value e max_value.


float ratio 🔗

  • void set_as_ratio(value: float)

  • float get_as_ratio()

Il valore mappato tra 0 e 1.


bool rounded = false 🔗

  • void set_use_rounded_values(value: bool)

  • bool is_using_rounded_values()

Se true, value sarà sempre arrotondato all'intero più vicino.


float step = 0.01 🔗

If greater than 0.0, value will always be rounded to a multiple of this property's value above min_value. For example, if min_value is 0.1 and step is 0.2, then value is limited to 0.1, 0.3, 0.5, and so on. If rounded is also true, value will first be rounded to a multiple of this property's value, then rounded to the nearest integer.


float value = 0.0 🔗

Valore attuale dell'intervallo. La modifica di questa proprietà (anche tramite codice) attiverà il segnale value_changed. Usa set_value_no_signal() se vuoi evitarlo.


Descrizioni dei metodi

void _value_changed(new_value: float) virtual 🔗

Chiamato quando il valore del Range viene modificato (seguendo le stesse condizioni di value_changed).


void set_value_no_signal(value: float) 🔗

Imposta il valore attuale del Range su value, senza emettere il segnale value_changed.


void share(with: Node) 🔗

Collega due Range insieme a qualsiasi intervallo precedentemente raggruppato con uno di essi. Quando una qualsiasi delle variabili membro dell'intervallo cambia, condividerà il nuovo valore con tutti gli altri intervalli nel suo gruppo.


void unshare() 🔗

Impedisce al Range di condividere le sue variabili membro con qualsiasi altro.