UI Set Text field


I started learning Unreal coming from Unity. And my simple question is how to set a text in an canvas. I understand you can bind the text field with the variable. But I also realized that this will called multiple times even without change (if I understood that correctly). So I wanted to bind it to an Event function were the value is only updated when the specific Event is called.

Maybe I understand something wrong about the Text update, if so please correct me!


Hey there - welcome to the forums! This says it is your first post.

Curious if you are trying to keep the widget on the screen all the time? If not, perhaps you could add the widget to an actor or player character, and on an overlap event or something, you can add the widget to the viewport, and remove it when the actor/player leaves the collision area.

Referencing this here: 445903

I am going to check out how to do this if you constantly have a widget on screen (like a HUD)

Perhaps this video provides the answer if you have text on screen all the time? UE4 Widget Text Bind Variable from Character BP - YouTube


You can set it directly with these nodes, one for normal text and one is for rich text. To be able to do this you must go into the designer tab, select the object you want to assign the text to, and check “Is Variable” in the details panel. Whether or not it makes any difference in performance, I don’t know.