gpt4 book ai didi

qt - qt qml 和 qt Quick 的区别

转载 作者:行者123 更新时间:2023-12-01 20:26:59 26 4
gpt4 key购买 nike

我对 QML、QtQuick 1.0 和 QtQuick 2.0 感到困惑。他们有什么区别?

我使用基于Qt 5.1.1的QtCreator 2.8.1。我想开发一个桌面程序,我应该使用哪种技术?

最佳答案

QML 是语言的名称(就像 C++ 一样,它是另一种语言...)

QtQuick 是一个 QML 工具包,允许用 QML 语言开发图形界面(QML 还有其他工具包,有些是图形化的,如 Sailfish SilicaBlackBerry Cascade ,有些是非图形化的,如 QBS ) QMake/CMake/make 的替代品...)

QtQuick 1.x 基于 Qt4.x,并使用 QPainter/QGraphicsView API 来绘制场景。QtQuick 2.X 随 Qt5.0 一起推出,基于高度优化的 OpenGLES2 抽象层 Scene Graph。

在 Qt5.1 中,场景图得到了增强,可以使用多线程 (QtQuick 2.1)在 Qt5.2 中,场景图进行了更多优化,以减少 CPU/GPU 调用和内存使用

QML引擎在Qt4.x中基于JsCore(Webkit的JS引擎),并在5.0中基于V8(Google Chrome的JS引擎)重新构建,但这不允许在移动设备上使用它,特别是在iOS上,所以Qt5.2引入了一个新的 QML 引擎,名为 V4VM,由 Qt 人员创建/为 Qt 人员创建。

还有 QtQuick Controls,它基本上是一组基于 QtQuick 的原生外观小部件。它最初是针对桌面的,但 Qt 5.4 引入了基于 Holo 主题的 Android 原生 L&F。 Material 主题以及 iOS 主题正在开发中,但截至当前 Qt 版本 (5.5) 尚未提供。有些控件仅限 Enterprise,但在 Qt5.5 中它们被重命名为 Extras,并且现在可用于所有许可证。另一项开发正在进行中,名为 QtQuickControls 2,它是对 Controls 的完全重写,以获得更好的性能,针对轻型嵌入式 UI,它应该处于 Qt 5.6 的技术预览阶段。

从 Qt5.5 开始,有一个名为 QtQuick3D 的新模块,它提供了使用 QML 语言创建 3D 应用程序/游戏的能力。它不使用过于面向 2D/2.4D 的 SceneGraph。为此,有一个名为 FrameGraph 的新引擎。

如果您开发现代应用程序,您应该使用 Qt5.x + QML 2.x + QtQuick 2.x,以接触尽可能广泛的用户群。

对于 Qt,一般来说,请始终关注更新,因为它们添加了更多功能、更多性能和更多平台。

关于qt - qt qml 和 qt Quick 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19696153/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com