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

Hérite de : Control < CanvasItem < Node < Object

Hérité par : EditorSpinSlider, ProgressBar, ScrollBar, Slider, SpinBox, TextureProgressBar

Classe de base abstraite pour les contrôles qui représentent un nombre dans un intervalle.

Description

Range est une classe de base abstraite pour les contrôles qui représentent un nombre dans un intervalle, en utilisant un pas step et une taille de page configurés. Voir par exemple ScrollBar et Slider pour des exemples de nœuds de haut niveau utilisant Range.

Propriétés

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

Méthodes

void

_value_changed(new_value: float) virtual

void

set_value_no_signal(value: float)

void

share(with: Node)

void

unshare()


Signaux

changed() 🔗

Émis quand min_value, max_value, page, ou step change.


value_changed(value: float) 🔗

Émis quand value change. Lorsqu'utilisé pour un Slider, cela est appelle en continu lors du glissage (voire à chaque trame). Si vous effectuez une opération coûteuse dans une fonction connectée à value_changed, essayez d'utiliser un Timer de debouncing (litt. "anti-rebond") afin d'appeler la fonction moins souvent.

Note : Contrairement aux signaux tels que LineEdit.text_changed, value_changed est également émis lorsque value est défini directement par code.


Descriptions des propriétés

bool allow_greater = false 🔗

  • void set_allow_greater(value: bool)

  • bool is_greater_allowed()

Si true, value peut être supérieure à max_value.


bool allow_lesser = false 🔗

  • void set_allow_lesser(value: bool)

  • bool is_lesser_allowed()

Si true, value peut être inférieure à min_value.


bool exp_edit = false 🔗

  • void set_exp_ratio(value: bool)

  • bool is_ratio_exp()

Si true, et que min_value est supérieur ou égal à 0, value sera représenté de façon exponentielle plutôt que linéaire.


float max_value = 100.0 🔗

Valeur maximale. L'intervalle est borné si la valeur value est supérieure à max_value.


float min_value = 0.0 🔗

Valeur minimale. L'intervalle est borné si la valeur value est inférieure à min_value.


float page = 0.0 🔗

La taille de la page. Utilisé principalement pour ScrollBar. La longueur de l’ascenseur d'une ScrollBar est la taille de la ScrollBar multipliée par page divisé par la différence entre min_value et max_value.


float ratio 🔗

  • void set_as_ratio(value: float)

  • float get_as_ratio()

La valeur définit entre 0 et 1.


bool rounded = false 🔗

  • void set_use_rounded_values(value: bool)

  • bool is_using_rounded_values()

Si true, value sera toujours arrondi au nombre entier le plus proche.


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 🔗

La valeur actuelle de l'intervalle. Changer cette propriété (même via le code) déclenchera le signal value_changed. Utilisez set_value_no_signal() si vous voulez éviter cela.


Descriptions des méthodes

void _value_changed(new_value: float) virtual 🔗

Appelée lorsque la valeur du Range est modifiée (suivant les mêmes conditions que value_changed).


void set_value_no_signal(value: float) 🔗

Définit la valeur actuelle du Range à la valeur spécifiée value, sans émettre le signal value_changed.


void share(with: Node) 🔗

Lie deux Ranges ensemble avec aussi tout Range groupé précédemment avec l'un d'entre eux. Lorsque l'une des variables membres de l'intervalle change, elle partagera la nouvelle valeur avec tous les autres Ranges de son groupe.


void unshare() 🔗

Arrête le Range de partager ses variables membres avec les autres.