хм...интересно какое это правило? когда мэйнвиндов создаётся из главной функции и ни одного виджета ещё не существует, чтобы поставить его родителем окну?
охренеть, правило...скорее уж, нужда.
Я так понимаю, что имелся в виду тот факт, что создание виджета с parent=0 в конструкторе (или при setParent) выпихивает его в отдельное окно.
А по сути - надо либо parent для окна-самоубийцы указывать, либо руками прибивать в деструкторе главного окна.