Scrolling 3D Widgets / Get Tooltip from 3D Widget


i’m trying to get scrolling with the touchpad of the ViveControllers to work with 3D Widgets (Widget Component). I gues I’m on the right way, but can’t figure out the detail.

Made my own pointer using WidgetInteractionComponent (WIC). WIC->ScrollWheel(…) seems to be the right function to inject the input. When I first fire WIC->PressPointerKey(…, LeftMouseButton) and then use WIC->ScrollWheel(…), I’m able to get the ScrollBox of the UMG to scroll until WIC->ReleasePointerKey(…, LeftMouseButton). How would I go about calling WIC->ScrollWheel(…) without simulating the LeftMouseButton press? As the LeftMouseButton press would do what it does: Press buttons what is obviously an unwanted behavior when scrolling.

Unreal VREditor does the same. Over a Widget you can use the Touchpad to scroll. Had a look in the source, but was not able to find out how it’s done.

Another problem I’m curious about is how to get the tooltip of the widget hovered with the WIC? As the tooltip set in a widget is not show when hovered with the WIC. Made myself a workaround but would be nice to use the already implemented functionality.


I haven’t tried your first question yet, but the regular tooltip is not possible on a world space widget. You can fake it though using a menu anchor with the OnMouseEnter/Leave-events like so Screenshot - f2965caeef4a1421ae54d113fa6c05c1 - Gyazo

thanks Fantasifall, thats somewhat the workaround I already use. I have a border in the back and OnMouseMove I dispatch an event containing the tooltip that is picked up by another widget that shows it.

Didn’t know about the events and MenuAnchor yet -> still what learned, thanks.

Still up for some suggestions about scrolling the widget with a Pointer in VR.


EDIT: I don’t know why, just tryied again and scrolling is working as expected.
If anyone else is looking for this: WidgetInteractionComponent->ScrollWheel, does work out of the box.