Given node tree
Control
ScrollContainer
VBoxContainer
Thing1
Thing2
...
click ScrollContainer. In inspector dock, go to Mouse > Filter
and set Ignore. For me, it worked. But when you wheel inside the VScroller, it still scrolls the screen.
To prevent this, add script below to the ScrollContainer
var _v_scroll: VScrollBar
func _ready() -> void:
_v_scroll = get_node("_v_scroll")
func _input(event: InputEvent) -> void:
if event is InputEventMouseButton and (event.button_index == BUTTON_WHEEL_DOWN || event.button_index == BUTTON_WHEEL_UP):
_v_scroll.set_mouse_filter(Control.MOUSE_FILTER_IGNORE)
else:
_v_scroll.set_mouse_filter(Control.MOUSE_FILTER_PASS)
when you scroll, it disables the mouse input. When you not, it enables the mouse input.