pyqt gui控制台一直打开

pyqt gui console keeps opening

所以我是 运行ning python 3.5 和 spyder 3.2.8 和 pyinstaller 我用设计师制作了一个图形用户界面,主要显示如下。

def run():
    app=QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_Dialog()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

run()

我的问题是当我使用 pyinstaller 制作 exe 时 运行 它和一个控制台与 gui 一起弹出,当我关闭它时,所有 gui 都关闭。有什么想法吗?

我认为您需要适当地缩进它以使您的代码仅在调用 运行() 时执行。

def run():
    app=QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_Dialog()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

run()

在使用 pyinstaller 创建 .exe 时使用“--noconsole”参数

有关详细信息,请参阅文档:-http://pyinstaller.readthedocs.io/en/stable/usage.html