@nyar_roller
Молодой, перспектиный Python Developer

Как реализовать правильный переход между диалогом и MainWindow PyQt5?

В общем код ниже.. Есть диаолг и MainWindow (Созданны отдельным файлом).. Переход от окна к диалогу производится через кнопку Enter, как бы всё работает, диалог открывается, вот только скрывается программа в панеле задач, и при выходе через крестик, остаётся процесс в диспетчере, кто подскажент, как реализовать переход более по человечески?
(код для того, чтобы разобраться в принципе работы..)
class Win2(QtWidgets.QDialog):
    
    def __init__(self, parent = None):
        super(BkTo, self).__init__(parent)
        self.bk = Ui_BackTo()
        self.bk.setupUi(self)
 
 
 
class Win1(QtWidgets.QMainWindow):
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
 
        self.ui = Ui_MainWindow()
 
        self.ui.setupUi(self)
 
        self.ui.Enter.clicked.connect(self.enterOpen) 
 
    def enterOpen(self):
            dial = Win2(self)
            dial.exec_()
            dial.show()     
 
if __name__ == "__main__":       
    app = QtWidgets.QApplication([])
    application = MyWin()
 
    application.show()
    sys.exit(app.exec())
  • Вопрос задан
  • 135 просмотров
Пригласить эксперта
Ответы на вопрос 1
@MechanicZelenyy
class Win2(QtWidgets.QDialog):
    
    def __init__(self, parent = None):
        super(BkTo, self).__init__(parent)


Я думаю надо определится от кого вы именно наследуется --- в super желательно передавать одного из родителей.

dial.exec_()
            dial.show()

Это тавтология, нужно только exec.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы