Python3 Qt5 主窗口

Posted

技术标签:

【中文标题】Python3 Qt5 主窗口【英文标题】:Python3 Qt5 MainWindow 【发布时间】:2020-06-01 09:23:13 【问题描述】:

我有一个看起来像这样的应用程序流程。启动时会显示一个 MainWindow,并要求用户选择一个项目或创建一个新项目。在创建或从列表中选择项目后,我想关闭此 MainWindow 并打开另一个 MainWindow。

在我的main.py 中,代码如下所示:

app = QApplication([])

ui_project_list_view = ProjectListView()
ui_project_list_view.show()

app.exec_()

现在我想关闭第一个主窗口 (ui_project_list_view) 并打开另一个主窗口 (ui_project_view)。此代码是从ui_project_list_view 中调用的。

ui_project_view = ProjectView()
ui_project_view.show()
main_view.close()

无论我按什么顺序显示或关闭,应用程序都会退出。我应该如何设计我的“窗口流”?

感谢您的帮助。

【问题讨论】:

【参考方案1】:

如果您打开大多数程序(例如 Word 或 Excel 或 QtDesigner),您会看到一个空白的主窗口初始化,然后会出现一个弹出窗口,要求您选择项目。

如果您想将此应用于您的代码,ProjectView 应该是主窗口,ProjectListView 将是弹出窗口。 ProjectView 会在初始化后调用它,也许是在 setup 函数中。在ProjectListView 完成后,ProjectView 只需使用ProjectListView 拥有的信息更新屏幕。

【讨论】:

感谢您的回答,我会按照您推荐的工作流程进行。

以上是关于Python3 Qt5 主窗口的主要内容,如果未能解决你的问题,请参考以下文章

Python3 + Pillow + QT5:当我调整包含图像的标签大小时崩溃

Python3.8+Qt5.0感知哈希算法实现图像检索系统

pycharm+QT5+python3安装与环境配置

如何从 Qt:: 命名空间(Qt5,Python3.x)导入?

图像标注工具labelImg安装方法(win7+Python3.5+Qt5)

python3之Splash