【发布时间】:2018-01-12 11:14:27
【问题描述】:
我有这段代码,效果很好:
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()?
提前致谢。
【问题讨论】:
-
它只是让你在 Qt 事件循环结束后立即关闭程序,在大多数情况下,当你关闭 GUI 时
-
QApplication::exec: 必须从主线程调用
标签: python python-3.x pyqt pyqt4 exit