ScrollContainer
Hereda: Container < Control < CanvasItem < Node < Object
Heredado por: EditorInspector
Un contenedor utilizado para proporcionar barras de desplazamiento a un control hijo cuando sea necesario.
Descripción
Un contenedor utilizado para proporcionar a un control hijo barras de desplazamiento cuando sea necesario. Las barras de desplazamiento se dibujarán automáticamente a la derecha (para vertical) o abajo (para horizontal) y permitirán arrastrar para mover el Control visible (y sus hijos) dentro del ScrollContainer. Las barras de desplazamiento también cambiarán automáticamente el tamaño del agarrador según el Control.custom_minimum_size del Control en relación con el ScrollContainer.
Tutoriales
Propiedades
clip_contents |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Métodos
void |
ensure_control_visible(control: Control) |
Propiedades del Tema
|
||
|
||
|
||
|
||
Señales
scroll_ended() 🔗
Emitida cuando el desplazamiento se detiene al arrastrar el área desplazable con un evento táctil. Esta señal no se emite cuando se desplaza arrastrando la barra de desplazamiento, desplazando con la rueda del ratón o desplazando con eventos de teclado/gamepad.
Nota: Esta señal solo se emite en Android o iOS, o en plataformas de escritorio/web cuando ProjectSettings.input_devices/pointing/emulate_touch_from_mouse está habilitado.
scroll_started() 🔗
Emitida cuando el desplazamiento comienza al arrastrar el área desplazable con un evento táctil. Esta señal no se emite cuando se desplaza arrastrando la barra de desplazamiento, desplazando con la rueda del ratón o desplazando con eventos de teclado/gamepad.
Nota: Esta señal solo se emite en Android o iOS, o en plataformas de escritorio/web cuando ProjectSettings.input_devices/pointing/emulate_touch_from_mouse está habilitado.
Enumeraciones
enum ScrollMode: 🔗
ScrollMode SCROLL_MODE_DISABLED = 0
Desplazamiento desactivado, la barra de desplazamiento estará invisible.
ScrollMode SCROLL_MODE_AUTO = 1
Desplazamiento activado, la barra de desplazamiento estará visible solo si es necesario, es decir, el contenido del contenedor es más grande que el contenedor.
ScrollMode SCROLL_MODE_SHOW_ALWAYS = 2
Desplazamiento activado, la barra de desplazamiento siempre estará visible.
ScrollMode SCROLL_MODE_SHOW_NEVER = 3
Desplazamiento activado, la barra de desplazamiento estará oculta.
ScrollMode SCROLL_MODE_RESERVE = 4
Combina SCROLL_MODE_AUTO y SCROLL_MODE_SHOW_ALWAYS. La barra de desplazamiento solo es visible si es necesario, pero el tamaño del contenido se ajusta como si siempre estuviera visible. Es útil para asegurar que el tamaño del contenido se mantenga igual independientemente de si la barra de desplazamiento está visible.
enum ScrollHintMode: 🔗
ScrollHintMode SCROLL_HINT_MODE_DISABLED = 0
Scroll hints will never be shown.
ScrollHintMode SCROLL_HINT_MODE_ALL = 1
Scroll hints will be shown at the top and bottom (if vertical), or left and right (if horizontal).
ScrollHintMode SCROLL_HINT_MODE_TOP_AND_LEFT = 2
Scroll hints will be shown at the top (if vertical), or the left (if horizontal).
ScrollHintMode SCROLL_HINT_MODE_BOTTOM_AND_RIGHT = 3
Scroll hints will be shown at the bottom (if horizontal), or the right (if horizontal).
Descripciones de Propiedades
bool draw_focus_border = false 🔗
Si es true, se dibuja focus cuando el ScrollContainer o uno de sus nodos descendientes está enfocado.
Si es true, el ScrollContainer se desplazará automáticamente hacia los hijos enfocados (incluidos los hijos indirectos) para asegurarse de que sean completamente visibles.
ScrollMode horizontal_scroll_mode = 1 🔗
void set_horizontal_scroll_mode(value: ScrollMode)
ScrollMode get_horizontal_scroll_mode()
Controla si la barra de desplazamiento horizontal puede ser usada y cuándo debería ser visible.
Zona muerta para el desplazamiento táctil. Una zona muerta más baja hace que el desplazamiento sea más sensible.
ScrollHintMode scroll_hint_mode = 0 🔗
void set_scroll_hint_mode(value: ScrollHintMode)
ScrollHintMode get_scroll_hint_mode()
The way which scroll hints (indicators that show that the content can still be scrolled in a certain direction) will be shown.
Note: Hints won't be shown if the content can be scrolled both vertically and horizontally.
El valor de desplazamiento horizontal actual.
Nota: Si estás estableciendo este valor en la función Node._ready() o antes, necesita ser envuelto con Object.set_deferred(), ya que Range.max_value de la barra de desplazamiento aún no está inicializado.
func _ready():
set_deferred("scroll_horizontal", 600)
float scroll_horizontal_custom_step = -1.0 🔗
Reemplaza el ScrollBar.custom_step utilizado al hacer clic en los botones de incremento y decremento horizontal de la barra de desplazamiento interna o al usar las teclas de flecha cuando la ScrollBar está enfocada.
El valor de desplazamiento vertical actual.
Nota: Establecerlo antes de tiempo necesita ser diferido, al igual que en scroll_horizontal.
func _ready():
set_deferred("scroll_vertical", 600)
float scroll_vertical_custom_step = -1.0 🔗
Reemplaza el ScrollBar.custom_step utilizado al hacer clic en los botones de incremento y decremento verticales de la barra de desplazamiento interna o al usar las teclas de flecha cuando la ScrollBar está enfocada.
bool tile_scroll_hint = false 🔗
If true, the scroll hint texture will be tiled instead of stretched. See scroll_hint_mode.
ScrollMode vertical_scroll_mode = 1 🔗
void set_vertical_scroll_mode(value: ScrollMode)
ScrollMode get_vertical_scroll_mode()
Controla si la barra de desplazamiento vertical puede ser usada y cuándo debería ser visible.
Descripciones de Métodos
void ensure_control_visible(control: Control) 🔗
Asegura que el control dado sea visible (debe ser un hijo directo o indirecto del ScrollContainer). Utilizado por follow_focus.
Nota: Esto no funcionará en un nodo que acaba de ser añadido durante el mismo frame. Si quieres desplazarte a un hijo recién añadido, debes esperar hasta el siguiente frame usando SceneTree.process_frame:
add_child(child_node)
await get_tree().process_frame
ensure_control_visible(child_node)
HScrollBar get_h_scroll_bar() 🔗
Devuelve la barra de desplazamiento horizontal HScrollBar de este ScrollContainer.
Advertencia: Este es un nodo interno requerido, eliminarlo y liberarlo puede causar un fallo. Si deseas deshabilitar u ocultar una barra de desplazamiento, puedes usar horizontal_scroll_mode.
VScrollBar get_v_scroll_bar() 🔗
Devuelve la barra de desplazamiento vertical VScrollBar de este ScrollContainer.
Advertencia: Este es un nodo interno requerido, eliminarlo y liberarlo puede causar un fallo. Si deseas deshabilitar u ocultar una barra de desplazamiento, puedes usar vertical_scroll_mode.
Descripciones de las propiedades del tema
Color scroll_hint_horizontal_color = Color(0, 0, 0, 1) 🔗
Color used to modulate the scroll_hint_horizontal texture.
Color scroll_hint_vertical_color = Color(0, 0, 0, 1) 🔗
Color used to modulate the scroll_hint_vertical texture.
int scrollbar_h_separation = 0 🔗
The space between the ScrollContainer's vertical scroll bar and its content, in pixels. No space will be added when the content's minimum size is larger than the ScrollContainer's size.
int scrollbar_v_separation = 0 🔗
The space between the ScrollContainer's horizontal scroll bar and its content, in pixels. No space will be added when the content's minimum size is larger than the ScrollContainer's size.
Texture2D scroll_hint_horizontal 🔗
The indicator that will be shown when the content can still be scrolled horizontally. See scroll_hint_mode.
Texture2D scroll_hint_vertical 🔗
The indicator that will be shown when the content can still be scrolled vertically. See scroll_hint_mode.
El StyleBox del borde de enfoque del ScrollContainer. Solo se usa si draw_focus_border es true.
El fondo StyleBox del ScrollContainer.