I have an extended main window with a QtGui.QTabWidget added to it. I am creating several widgets extended from QtGui.QWidget which I can add and remove to the tab widget. What I would like to do is have a "pop-out" button that causes the child widget to be removed from the tab widget and come up as it's own independent window (and a "pop-in" button to put it back into the main window). The same sort of idea as Gtalk-in-Gmail has. Note that if I close the main window, the other "tabs" or "windows" should also close, and I should be able to put all the windows side-by-side and have them all visible and updating at the same time. (I will be displaying near-realtime data). I am new to Qt, but if I'm not mistaken, if a Widget has no parent it comes up independently. This works, but I then have no idea how I could "pop" the window back in. class TCWindow(QtGui.QMainWindow): . . . def popOutWidget(self, child): i = self.tabHolder.indexOf(child) if not i == -1: self.tabCloseRequested(i) self.widgets.setParent(None) self.widgets.show() My gut says that there should still be a parent/child relationship between the two. Is there a way to keep the parent but still have the window come up independently, or am I misunderstanding Qt's style? Otherwise, would creating a variable in the child to hold a link to the main window (like self.parentalUnit = self.parent()) be a good idea or a hackish/kludgy idea? Continue reading...