[英]What is the necessity of sys.exit(app.exec_()) in PyQt4?
我有这段代码,可以正常工作:
import sys
from PyQt4 import QtGui
def main_window():
app = QtGui.QApplication(sys.argv)
screen = QtGui.QDesktopWidget().screenGeometry()
widget = QtGui.QWidget()
widget.setWindowTitle("Center!")
widget.setGeometry(200, 100, screen.width() - 400, screen.height() - 200)
label = QtGui.QLabel(widget)
label.setText("Center!")
label.move(widget.frameGeometry().width() / 2, widget.frameGeometry().height() / 2)
widget.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main_window()
现在在我说sys.exit(app.exec_())
行中,我也可以说app.exec_()
,两者的工作原理相同。
那么有什么区别,为什么有必要编写sys.exit()
呢?
提前致谢。
exec()
调用将启动事件循环,并将阻塞直到应用程序退出。 如果设置了退出代码 ,则exec()
将在事件循环终止后将其返回。 将此退出代码传递给sys.exit()
是一个好习惯-但这并非绝对必要。 如果没有显式调用sys.exit()
,则在执行最后一行代码后,脚本将自动以代码0
退出。 通常使用非零退出代码来通知调用过程发生错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.