I even tried calling ‘Get Parent’ and then remove from the parent as well. Still no effect
It works when I just create the template widget in game.
But when I make a new widget and add this template widget, I can’t get it to actually remove itself. I stepped through and it’s actually hitting the ‘Remove from Parent’.
I think ive had a similar problem to you. My menu system uses child widgets for the buttons, one of these is “play”. Clicking on play opens another level which is called inside the child widget, but removing the whole menu fails using like what you have above.
My salvation was using Get All Widgets Of Class and a for each loop. This way I could kill all the widgets once the level changed.
in the end i did it the other way around and call Remove Child inside the Parent which worked out just fine.
However i have a constant HUDWidget, so i can do whatever i like to its children, because it has all Menus(and menu has submenus stored) and Static HUD Elements.
IMPORTANT: I’m always in this situation. Remove from parent will not work if you Add to viewport 2 or more times by mistake.
So UE4 remove correctly, but a reference is lost and the UE4 will only remove the last one.
So be shure to not add if there is one already there. With this assured, removeFromPArent will work perceftly