Подключив действие к функции, подобной этой, self.actionQuit.triggered.connect(MainWindow.closeEvent)
, вы гарантируете, что сигнал triggered
передан функции, но этот сигнал является логическим, как написано в документации , что означает, что event
является логическим значением в вашем коде ниже:
def closeEvent(self, event):
print(event)
result = QtWidgets.QMessageBox.question(self,
"Confirm Exit...",
"Are you sure you want to exit ?",
QtWidgets.QMessageBox.Yes| QtWidgets.QMessageBox.No)
event.ignore()
print(result)
if result == QtWidgets.QMessageBox.Yes:
event.accept()
Логическое значение не имеет атрибута ignore
или accept
, следовательно, ошибка AttributeError.У меня нет решения, но это источник вашей проблемы.Надеемся, что выход из программы с помощью сочетания клавиш - это вопрос, на который уже дан ответ.