Inherits: Container < Control < CanvasItem < Node < Object

Inherited By: EditorInspector

Category: Core

Brief Description

A helper node for displaying scrollable elements such as lists.

Theme Properties

StyleBox bg


  • scroll_ended ( )

Emitted when scrolling stops.

  • scroll_started ( )

Emitted when scrolling is started.


A ScrollContainer node meant to contain a Control child. ScrollContainers will automatically create a scrollbar child (HScrollBar, VScrollBar, or both) when needed and will only draw the Control within the ScrollContainer area. 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.rect_min_size of the Control relative to the ScrollContainer. Works great with a Panel control. You can set EXPAND on the children’s size flags, so they will upscale to the ScrollContainer’s size if it’s larger (scroll is invisible for the chosen dimension).

Property Descriptions

  • int scroll_deadzone
Default 0
Setter set_deadzone(value)
Getter get_deadzone()
  • int scroll_horizontal
Default 0
Setter set_h_scroll(value)
Getter get_h_scroll()

The current horizontal scroll value.

  • bool scroll_horizontal_enabled
Default true
Setter set_enable_h_scroll(value)
Getter is_h_scroll_enabled()

If true, enables horizontal scrolling.

  • int scroll_vertical
Default 0
Setter set_v_scroll(value)
Getter get_v_scroll()

The current vertical scroll value.

  • bool scroll_vertical_enabled
Default true
Setter set_enable_v_scroll(value)
Getter is_v_scroll_enabled()

If true, enables vertical scrolling.

Method Descriptions