使用pyqt4 even时发生AttributeError

2024-10-02 18:14:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些像这样的pyqt4脚本:(编辑)

self.retranslateUi(Dialog)
    self.close_pushButton.clicked.connect(self.closeApp)

def retranslateUi(self, Dialog):
    Dialog.setWindowTitle(_translate("Dialog", "Main App", None))
    self.close_pushButton.setText(_translate("Dialog", "Close", None))

def closeApp(self, event):
    result = QtGui.QMessageBox.question(self, 'Exit Application',
          "Are you sure you want to exit?",
          QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)
    if result == QtGui.QMessageBox.Yes:
       event.accept()
    else:
       event.ignore()

运行脚本时,始终会显示如下错误消息:

AttributeError: 'bool' object has no attribute 'accept'

有谁能帮我解决这个问题吗?在


Tags: self脚本noneyoueventclosedefresult
1条回答
网友
1楼 · 发布于 2024-10-02 18:14:44

当然,您的closeApp函数应该如下所示:

def closeApp(self):  # event not required
    result = QtGui.QMessageBox.question(self, 'Exit Application',
                                        "Are you sure you want to exit?",
                                        QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)
    if result == QtGui.QMessageBox.Yes:
        self.close()

有关close()的信息,请参见http://doc.qt.io/qt-4.8/qwidget.html#close。在

希望这有帮助。在

相关问题 更多 >