Окно открывается при втором клике

Есть код для открытия следующего окна, раньше оно открывалось, но при перемещении этой строки вниз по коду, она стала открываться только со второго щелчка.

    def __init__(self):
        super(Testirovanie, self).__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.ui.pushButton.clicked.connect(self.add_new_transaction)
        #self.ui.pushButton.clicked.connect(self.open_second_window)
        self.conn = Data()
        self.second_window = None
    def add_new_transaction(self):
        name = self.ui.nameEdit.text()
        famka = self.ui.famEdit.text()
        gruppa = self.ui.grupEdit.text()
        if name == '' or famka == '' or gruppa == '':
            msg4 = QMessageBox()
            msg4.setWindowTitle('Внимание')
            msg4.setText('Вы заполнили данные не до конца. Проверьте поля для заполнения.')
            msg4.setIcon(QMessageBox.Warning)
            msg4.setStyleSheet(u"background-color:#6495ED")
            msg4.exec()
        if name != '' and famka != '' and gruppa != '':
            msg = QMessageBox()
            msg.setText("Теперь можете закрывать это окно")
            msg.setWindowTitle("Данные занесены")
            msg.setIcon(QMessageBox.Information)
            msg.setStyleSheet(u"background-color:#6495ED")
            msg.exec()
            self.ui.pushButton.clicked.connect(self.open_second_window)
            self.conn.add_new_transcation(name, famka, gruppa)
    def open_second_window(self):
        self.close()
        self.second_window = ttestirovanie_window()
        self.second_window.show()

Речь идет про self.ui.pushButton.clicked.connect(self.open_second_window), которая изначально находилась в def __init__ и прекрасно работала, но не так как мне надо. я переместил ее в def add_new_transaction, а конкретнее в условие, но тут она работает только по второму щелчку(т.е. открывается QMessageBox, в котором содержится информация, я нажимаю на ОК, этот QMessageBox закрывается, и второе окно не открывается. Нажимаю еще раз на кнопку сохранения, опять открывается QMessageBox, я его закрываю и только тогда открывается второе окно)


Ответы (1 шт):

Автор решения: Lotlt

self.ui.pushButton.clicked.connect(self.open_second_window) эту строчку надо переделать в msg.finished.connect(self.open_second_window) и все заработало

→ Ссылка