Download

Trouble calling a custom event on UMG in an actor blueprint

Hi I have been working on a door with a lock/unlock UMG 3D widget attached to it for a game. I am trying to make the door a BP and in that BP I want to have a 3D widget. I want to be able to call events on the 3D widget from the door BP. When I add the widget into my BP components it become visible in the BP and you would think I would be able to drag that component into the event graph and use it as a reference to call custom events from that widget. However that is not the case I can only get a reference for the widget component storing the 3D widget and not the 3D widget itself. Not sure what I am doing wrong. Thanks for any help you can give me.

69b9fc6cedf9d44de837b1592292472a40df3e39.jpeg

https://youtube.com/watch?v=z4Xv_WNxpIE

This tutorial explains how to do Widget Communication to BPs using Event Dispatchers. The content is quite similar to what your trying to do and im sure you can work it out from there.

This is just one way to communicate between Widgets and BPs, hope it helps you.

Thank you for the quick response! The area I am having trouble in is interacting with a widget component that is actually a part of a BP. Interacting with a widget drawn to the player HUD is working fine for me. As you can see in my picture in the blueprint components list there are 2 widgets but the BP is unable to use those references to call functions on the widgets themselves. Its seem to only be a reference to a thing called a widget component which is storing what type of widget it is but not letting me interact with it.

3D Widget Compontents are still an experimental feature, im not sure if what your trying to do is possible, at least not yet possible. Personally i havent used them as such, so i cant attest to their usability.

I simple work around would be to treat it as a normal widget and define communication between the Door and the widget using things like Event Dispatchers or other means.

Hey, if you want to access the Widget in the Component, try this:

Ignore the additional stuff, it’s from my own project. The important part is “GetUserWidgetObject” and casting it to the WidgetClass you are using there.

eXi to the rescue again! :slight_smile:

eXi you are amazing that is exactly what I was looking for.

3 years later, still nailed it :slight_smile:

sorry to nacro this thread but iv been trying for days to get the 3d widget interaction Component to cast on server from the Client when it hits the F key, I am working on the same method as jameo. but i cant seem to get anything to work, works fine when its server to server , client to client.

way i have it, is on button click custom event calls on server to dispatch call open gate, i have the get widget user object set in the begin play but i need to reference it another way? or get the keypress to work on the server , really need help with this