So let’s call it widget A and widget B. Widget A and Widget B are supposed to remove each other from the screen. But when you spam click them the widgets stay on the screen. I tired the “Is Valid?” node but it still happened.
With your current setup, the button can be clicked multiple times, which will create more than one widget. But only the last widget will be removed when clicking the other button.
Simply check if the widget was already created when clicking the button to ensure only one widget is created.
You can do so by getting the widget variable, right clicking on it, selecting Convert to Validated Get (or use an Is Valid node). Then, only continue with creating the widget if the variable is Invalid.
Final Graph:



