Qt是一个跨平台框架,通常用作图形工具包,它不仅创建CLI应用程序中也非常有用。而且它可以在台式机、移动端以及嵌入式设备端口上运行。完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。
![bb48904310da2c7cb19fc45b740b6b25.gif](https://i-blog.csdnimg.cn/blog_migrate/363f702eba571058f848e6613e8c5f55.gif)
【同类产品推荐】
QtitanRibbon: 致力于为Windows、Linux和Mac OS X提供功能完整的Ribbon组件。
QtitanChart :使您可以快速地为应用程序提供漂亮而丰富的图表。并且支持所有主要的桌面操作系统。
QtitanDataGrid :使得表格数据可以直接面向终端用户完全集成了QtDesigner,极易适应其他相似开发环境,保证100%兼容Qt GUI。
本示例说明如何在系统UI中为窗口设置动画以使其显示和消失。
![55a1fc18149d139d192ffd4f7a69edc2.png](https://i-blog.csdnimg.cn/blog_migrate/8ccbbef6bbf30fbcc6b1cce806e58bfb.png)
这个例子展示了一个非常简单的系统UI实现,展示了Qt Application Manager的基本构建块。
应用程序的图标和名称在左侧。您可以单击它们各自的图标来启动和停止它们。右侧的列布局显示其窗口。
应用程序在特定颜色的背景下显示“ Hello World!”。
01
文件和文件夹结构
此示例包括四个单独的QML应用程序:一个系统UI和三个示例应用程序:“ Hello Red”,“ Hello Green”和“ Hello Blue”,System UI。如下所示:
system-ui.qml
apps
▫ hello-world.blue
▪ icon.png
▪ info.yaml
▪ main.qml
▫ hello-world.red
▪ icon.png
▪ info.yaml
▪ main.qml
▫ hello-world.green
▪ icon.png
▪ info.yaml
▪ main.qml
02
运行系统界面
验证appman路径中是否包含二进制文件。如果没有,appman在使用二进制文件时,必须明确指定其位置。如果您的appman的路径中有二进制文件,则可以按以下方式运行系统用户界面:
examples/applicationmanager/hello-world$ appman --builtin-apps-manifest-dir ./apps system-ui.qml
你可以看到下面的屏幕截图:
![64099ec2f0aad65d48f205e82c437056.png](https://i-blog.csdnimg.cn/blog_migrate/59cc39818a0a505389565753e33fa087.png)
03
实施系统界面
像其他简单的QML应用程序一样,我们的示例代码以导入开始,并在根目录处添加一个普通Item。唯一的区别是我们的系统用户界面还导入了QtApplicationManager.SystemUI模块。
import QtQuick 2.4import QtApplicationManager.SystemUI 2.0Item { width: 800 height: 600
接下来,在根项目的左侧有一个列,在其中放置可用应用程序的图标及其名称。
// Show application names and icons Column { spacing: 20 Repeater { model: ApplicationManager Column { Image { source: model.icon MouseArea { anchors.fill: parent onClicked: model.isRunning ? application.stop() : application.start() } } Text { font.pixelSize: 20 text: model.name } } } }
接下来,我们将Column锚点放置在root的右侧Item。
// Show windows Column { anchors.right: parent.right Repeater { model: WindowManager WindowItem { width: 600 height: 200 window: model.window } } }
04
实现应用
下面我们将实现在彩色背景下显示一个“ Hello World!”。
import QtQuick 2.4 QtQuick 2.4import QtApplicationManager.Application 2.0import QtApplicationManager.Application 2.0ApplicationManagerWindow { { color: "blue" Text { { anchors.centerIn: centerIn: parent text: "Hello World!" }}}}
本篇文章中的内容你都学会了吗?点击阅读原文了解更详细的教程。如果这篇文章没能满足你的需求、前往慧都网搜索Qt免费获取更多文章教程!
限时福利
为庆祝中秋、国庆双节来袭,现慧都推出重磅限时优惠:Qt类C++跨平台界面开发工具限时最高直降7000元,最低只要4645元。点击下方产品查看详情吧>>
QtitanRibbon(点击查看详情)
QtitanChart (点击查看详情)
QtitanDataGrid(点击查看详情)
QtitanNavigation(点击查看详情)
QtitanDocking(点击查看详情)
往期回顾
1.1.Qt系列控件2020年全新升级,让嵌入式跨平台UI开发变得更轻松!
2.一张表,让您选择适合的C++跨平台界面框架!还有Qtitan系列组件哦!
3.嵌入式跨平台UI开发必备组件!Qt系列控件全新升级,火爆来袭!
4.除了DevExpress,你知道这款实现Qt技术的用户界面组件吗?
![ce1efee0c78bda87699df96097b0548d.gif](https://i-blog.csdnimg.cn/blog_migrate/44de59002da1a46c103ae78279fe3de9.gif)
点击“阅读原文”