首页 > 解决方案 > 多屏幕/窗口 QT QML C++ 应用程序

问题描述

我是 QT Quick 和 QML 的新手,我正在尝试使用 C++ 和 QT 构建 Linux 桌面多窗口应用程序。我的意思是具有多个窗口的应用程序,例如:

我想将这些屏幕作为独立的 C++ 类和 QML 文件,例如:

我能够构建代表这些屏幕的 QML 文件,但不确定如何将它们映射到将控制 QML 和后端并与之通信的类。我想让每个 QML 文件都表示为 C++ 类。屏幕堆栈管理器将使用这些类从屏幕堆栈中推送和弹出屏幕。

我看过 QT 提供的示例,但大多数示例都是单屏的,并没有解释如何拥有多个屏幕以及如何维护屏幕堆栈。

标签: c++qtqmlqt-quick

解决方案


使用 Quick Controls 2 StackView 控件:

https://doc.qt.io/qt-5/qml-qtquick-controls2-stackview.html

此控件维护一堆 QML 视图,其中顶部的视图始终可见,您可以使用动画弹出和推送视图。


推荐阅读