在PyQt应用程序中退出时提示
有什么方法可以提示用户退出用Python编写的gui程序?
Is there any way to promt user to exit the gui-program written in Python?
类似您确定要退出该程序?"
Something like "Are you sure you want to exit the program?"
我正在使用PyQt.
是.您需要覆盖代表您的应用程序的QWidget的默认关闭行为,以便它不立即接受该事件.您想要的基本结构是这样的:
Yes. You need to override the default close behaviour of the QWidget representing your application so that it doesn't immediately accept the event. The basic structure you want is something like this:
def closeEvent(self, event):
quit_msg = "Are you sure you want to exit the program?"
reply = QtGui.QMessageBox.question(self, 'Message',
quit_msg, QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)
if reply == QtGui.QMessageBox.Yes:
event.accept()
else:
event.ignore()
The PyQt tutorial mentioned by las3rjock has a nice discussion of this. Also check out the links from the PyQt page at Python.org, in particular the official reference, to learn more about events and how to handle them.