ScrollContainer
Hérite de : Container < Control < CanvasItem < Node < Object
Hérité par : EditorInspector
Un conteneur utilisé pour fournir des barres de défilement à un contrôle enfant au besoin.
Description
A container used to provide a child control with scrollbars when needed. Scrollbars will automatically be drawn at the right (for vertical) or bottom (for horizontal) and will enable dragging to move the viewable Control (and its children) within the ScrollContainer. Scrollbars will also automatically resize the grabber based on the Control.custom_minimum_size of the Control relative to the ScrollContainer.
Tutoriels
Propriétés
clip_contents |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Méthodes
void |
ensure_control_visible(control: Control) |
Propriétés du thème
Signaux
scroll_ended() 🔗
Émis lorsque le défilement s'arrête lors du glissement de la zone défilante avec un événement tactile. Ce signal n'est pas émis lors du défilement en faisant glisser la barre de défilement, en défilant avec la roue de la souris ou en défilant avec des événements de clavier/manette.
Note : Ce signal n'est émis que sur Android ou iOS, ou sur les plateformes de bureau/web lorsque ProjectSettings.input_devices/pointing/emulate_touch_from_mouse est activé.
scroll_started() 🔗
Émis lorsque le défilement commence lors du glissement de la zone défilante avec un événement tactile. Ce signal n'est pas émis lors du défilement en faisant glisser la barre de défilement, en défilant avec la roue de la souris ou en défilant avec des événements de clavier/manette.
Note : Ce signal n'est émis que sur Android ou iOS, ou sur les plateformes de bureau/web lorsque ProjectSettings.input_devices/pointing/emulate_touch_from_mouse est activé.
Énumérations
enum ScrollMode: 🔗
ScrollMode SCROLL_MODE_DISABLED = 0
Défilement désactivé, la barre de défilement sera invisible.
ScrollMode SCROLL_MODE_AUTO = 1
Défilement activé, la barre de défilement ne sera visible que si nécessaire, c'est-à-dire que le contenu du conteneur est plus grand que le conteneur.
ScrollMode SCROLL_MODE_SHOW_ALWAYS = 2
Défilement activé, la barre de défilement sera toujours visible.
ScrollMode SCROLL_MODE_SHOW_NEVER = 3
Défilement activé, la barre de défilement sera cachée.
ScrollMode SCROLL_MODE_RESERVE = 4
Combine SCROLL_MODE_AUTO et SCROLL_MODE_SHOW_ALWAYS. La barre de défilement n'est visible que si nécessaire, mais la taille du contenu est ajustée comme si elle était toujours visible. Utile pour s'assurer que la taille du contenu reste la même peu importe si la barre de défilement est visible.
Descriptions des propriétés
bool draw_focus_border = false 🔗
Si true, focus est dessiné lorsque le ScrollContainer ou l'un de ses nœuds descendants a le focus.
Si true, le ScrollContainer défilera automatiquement vers les enfants ayant le focus (y compris les enfants indirects) pour s'assurer qu'ils soient pleinement visibles.
ScrollMode horizontal_scroll_mode = 1 🔗
void set_horizontal_scroll_mode(value: ScrollMode)
ScrollMode get_horizontal_scroll_mode()
Contrôle si la barre de défilement horizontale peut être utilisée et quand elle devrait être visible.
Zone morte pour le défilement tactile. Une zone morte plus basse rend le défilement plus sensible.
La valeur de défilement horizontal actuelle.
Note : Si vous définissez cette valeur dans la fonction Node._ready() ou plus tôt, elle doit être définie avec Object.set_deferred(), puisque la Range.max_value de la barre de défilement n'est pas encore initialisée.
func _ready():
set_deferred("scroll_horizontal", 600)
float scroll_horizontal_custom_step = -1.0 🔗
Redéfinit le ScrollBar.custom_step utilisé lorsque vous cliquez sur les boutons d'incrément et de décrément horizontaux de la barre de défilement ou lorsque vous utilisez des touches directionnelles lorsque la ScrollBar a le focus.
La valeur de défilement vertical actuelle.
Note : La définir tôt doit être fait en différé, comme avec scroll_horizontal.
func _ready():
set_deferred("scroll_vertical", 600)
float scroll_vertical_custom_step = -1.0 🔗
Redéfinit le ScrollBar.custom_step utilisé lorsque vous cliquez sur les boutons d'incrément et de décrément verticaux de la barre de défilement ou lorsque vous utilisez des touches directionnelles lorsque la ScrollBar a le focus.
ScrollMode vertical_scroll_mode = 1 🔗
void set_vertical_scroll_mode(value: ScrollMode)
ScrollMode get_vertical_scroll_mode()
Contrôle si la barre de défilement verticale peut être utilisée et quand elle devrait être visible.
Descriptions des méthodes
void ensure_control_visible(control: Control) 🔗
Veille à ce que le control donné soit visible (doit être un enfant direct ou indirect du ScrollContainer). Utilisé par follow_focus.
Note : Cela ne fonctionnera pas sur un nœud qui vient d'être ajouté pendant la même trame. Si vous voulez faire défiler vers un enfant nouvellement ajouté, vous devez attendre jusqu'à la prochaine trame en utilisant SceneTree.process_frame :
add_child(noeud_enfant)
await get_tree().process_frame
ensure_control_visible(noeud_enfant)
HScrollBar get_h_scroll_bar() 🔗
Renvoie la barre de défilement horizontale HScrollBar de ce ScrollContainer.
Attention : Il s'agit d'un nœud interne requis, l'enlever et le libérer peut causer un plantage. Si vous souhaitez désactiver ou cacher une barre de défilement, vous pouvez utiliser horizontal_scroll_mode.
VScrollBar get_v_scroll_bar() 🔗
Renvoie la barre de défilement verticale VScrollBar de ce ScrollContainer.
Attention : Il s'agit d'un nœud interne requis, l'enlever et le libérer peut causer un plantage. Si vous souhaitez désactiver ou cacher une barre de défilement, vous pouvez utiliser vertical_scroll_mode.
Descriptions des propriétés du thème
La StyleBox du bord avec focus du ScrollContainer. Seulement utilisé si draw_focus_border vaut true.
Le StyleBox de l'arrière-plan du ScrollContainer.