Qt Quick 和 Widgets 的对比

Posted zach0812

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt Quick 和 Widgets 的对比相关的知识,希望对你有一定的参考价值。

概念:

Qt Quick : QML 类型 和 功能的标准库
Qt Quick 模块:提供可视化组件,模型视图支持,动画框架以及用于构建用户界面的更多功能。
Qt Quick Controls :基于Qt Quick 的可重用UI组件库。
Qt Quick1 基于Graphics View
Qt Quick2 基于Scene Graph 的技术 ,独立的渲染线程

 

 

QML(前端开发,后端还是C++): Qt Meta-Object Language 声明式脚本语言,1,声明式定义GUI界面,2,集成C++和 javascript,QT QML 模块,3,QML程序的语言和引擎基础结构

 

Qt Quick 的开发模式:

Front-end : 使用 QML
Back-end: 使用C++

 

QT Quick 和 Widget 的区别:

1,学习成本:

widget 基于C++语法,学习成本较高,
quick 是基于QML(语法类似JSON),解释性语言,易学,成本低(性能不会受影响,本质还是从C++编译)。

2,绑定机制 Bindings:

QML有特有的绑定机制,属性之间的绑定,一个属性变化会同时让所有的属性也变化。
widget 的 C++ 中没有

3,信号 Signals

QML 的信号和槽更加简单, QML 自带槽函数可以直接调用.
Widget 需要增加connect指定信号。

4,控件 Components

QML 可以自定义控件,方便复用

 

总结:

技术图片

 

Widget  和 QT Quick 可用控件对比:

技术图片

 

技术图片

 

技术图片

 

总结:

技术图片

 

 

Widget  和 QT Quick布局对比:

技术图片

 

这点上 Quick 有更多的方案~

 

Widget  和 QT Quick界面风格:

技术图片

 

技术图片

 

 

总结:

技术图片

 

 

 

Widget  和 QT Quick 动画:

技术图片

 

 

技术图片

 

 

总结下来,动画方面,Quick 是稳稳的赢的!

 

Widget  和 QT Quick 图形渲染(rendering):

技术图片

 

 

 

Widget  和 QT Quick 低端硬件适配:

Quick 也是稳赢,Qt  for Mcu 

Widget  和 QT Quick 工具方面:

技术图片

 

技术图片

 

 

 

总结:

技术图片

 

 

应用场景:

技术图片

 

技术图片

 

 

一般不会交叉使用两种技术,

 

QT Quick 和 QML的区别:

quick是框架,
QML是语言,

以上是关于Qt Quick 和 Widgets 的对比的主要内容,如果未能解决你的问题,请参考以下文章

C++Widgets编程(《Qt Creator快速入门》 第3版 学习笔记 )

使用 Qt MultiMedia 和 Widgets 播放网络流媒体视频

Qt和Qt Quick QML,

将 Qt Widgets 和 QML 与 QWidget::createWindowContainer() 结合起来

Qt文档阅读笔记-Qt, QML, Widgets…What Is The Difference?

Qt文档阅读笔记-Qt, QML, Widgets…What Is The Difference?