The most straightforward way to do this:
Here, I create some objects and a single widget:
Clicking an object produces its world coordinates, these are converted into screen coordinates. Position the widget there and make it visible.
Currently the widget will appear with its upper left corner centred on the click location. You can add an offset to the convert node to shift the widget around.

