Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

ScrollContainer

Inherits: Container < Control < CanvasItem < Node < Object

Inherited By: EditorInspector

A container used to provide scrollbars to a child control when needed.

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.

Tutorials

Properties

bool

clip_contents

true (overrides Control)

bool

follow_focus

false

ScrollMode

horizontal_scroll_mode

1

int

scroll_deadzone

0

int

scroll_horizontal

0

float

scroll_horizontal_custom_step

-1.0

int

scroll_vertical

0

float

scroll_vertical_custom_step

-1.0

ScrollMode

vertical_scroll_mode

1

Methods

void

ensure_control_visible ( Control control )

HScrollBar

get_h_scroll_bar ( )

VScrollBar

get_v_scroll_bar ( )

Theme Properties

StyleBox

panel


Signals

scroll_ended ( )

Emitted when scrolling stops when dragging the scrollable area with a touch event. This signal is not emitted when scrolling by dragging the scrollbar, scrolling with the mouse wheel or scrolling with keyboard/gamepad events.

Note: This signal is only emitted on Android or iOS, or on desktop/web platforms when ProjectSettings.input_devices/pointing/emulate_touch_from_mouse is enabled.


scroll_started ( )

Emitted when scrolling starts when dragging the scrollable area with a touch event. This signal is not emitted when scrolling by dragging the scrollbar, scrolling with the mouse wheel or scrolling with keyboard/gamepad events.

Note: This signal is only emitted on Android or iOS, or on desktop/web platforms when ProjectSettings.input_devices/pointing/emulate_touch_from_mouse is enabled.


Enumerations

enum ScrollMode:

ScrollMode SCROLL_MODE_DISABLED = 0

Scrolling disabled, scrollbar will be invisible.

ScrollMode SCROLL_MODE_AUTO = 1

Scrolling enabled, scrollbar will be visible only if necessary, i.e. container's content is bigger than the container.

ScrollMode SCROLL_MODE_SHOW_ALWAYS = 2

Scrolling enabled, scrollbar will be always visible.

ScrollMode SCROLL_MODE_SHOW_NEVER = 3

Scrolling enabled, scrollbar will be hidden.


Property Descriptions

bool follow_focus = false

  • void set_follow_focus ( bool value )

  • bool is_following_focus ( )

If true, the ScrollContainer will automatically scroll to focused children (including indirect children) to make sure they are fully visible.


ScrollMode horizontal_scroll_mode = 1

Controls whether horizontal scrollbar can be used and when it should be visible. See ScrollMode for options.


int scroll_deadzone = 0

  • void set_deadzone (