import sys
from PyQt6.QtWidgets import QWidget, QMessageBox, QApplication
# ##***Message Box***## #
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setGeometry(300, 100, 600, 600)
self.setWindowTitle('excise')
self.show()
def closeEvent(self, event):
reply = QMessageBox.question(self, 'Message',
"Are you sure to quit?", QMessageBox.Yes |
QMessageBox.No, QMessageBox.No)
if reply == QMessageBox.Yes:
event.accept()
else:
event.ignore()
def main():
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
按道理来说,点击关闭窗口后,输出应该是
会弹出一个询问是否关闭的窗口,但是结果是这个窗口会卡一小会,最后直接结束程序。
这个截图是我把pyQt6改成pyQt5后才得到的结果。有没有人帮忙解释一下什么原因,难道是pyQt6的问题吗?