所以,我是Qt的新手,我的目的是让自己熟悉Qt Graphics.但是,互联网上的大多数指南建议在处理图形时使用QML而不是Qt C++.
这是我的问题:Qt C++和QML有什么区别?QML给我们的是什么,Qt C++没有?
Tho*_*ire 19
它实际上不是QML与C++的问题,而是Qt使用什么UI技术的问题:
暂且不谈HTML5和OpenGL,QtWidgets与QtQuick的问题已经在其他地方进行了讨论,例如在Qt Quick vs. Qt Widget以及2014年Qt DevDays演示中.
我的个人观点:将QtWidgets用于传统桌面应用程序,将QtQuick用于移动和嵌入式(带触摸屏的设备),除非您有充分理由不这样做.QtWidgets对传统桌面控件有更好和更成熟的支持,而QtQuick更适合动画和完全自定义样式.
在桌面上使用QtQuick的一个原因是当你需要大量的自定义动画和样式时,代价是使用传统的桌面控件如工具栏,菜单栏,拖放等等.
选择QtWidgets时,语言总是C++(好吧,除非你使用Python绑定).虽然您可以使用Qt Designer工具直观地创建UI,但最终这些工具被编译为C++.
选择QtQuick时, UI部分的语言将是QML和JavaScript.但是,在任何中等大小的QtQuick应用程序中,您在某些时候也会有一个C++部分 - 例如,与其他C和C++库接口,用于没有关联JavaScript API的操作,或者只是为了更快,更易于维护的代码比JS.可以从QML访问C++类和对象,查看文档以获取更多详细信息.
| 归档时间: |
|
| 查看次数: |
4485 次 |
| 最近记录: |