如何用qml做界面,用C++实现业务逻辑

 我来答
Mexico卡卡
2017-11-25 · TA获得超过1万个赞
知道大有可为答主
回答量:1.3万
采纳率:98%
帮助的人:1878万
展开全部

首先 QML做页面,C++实现逻辑的话,那么必须有一个注册为QML类型的C++类。比如说你要显示一列数据,那么好QML用ListView,而数据的来源Listview的model就可以是C++注册成Qml的一个类型,比如QStringList,QList<QObject*>,QAbstractItemModel等(可以在文档的Using C++ Models with Qt Quick Views中找到)。进一步往深一些说,QML的很多类型都是由C++来实现的,因此QML写出来的代码,用C++完全可以实现,只不过QML是封装好的交给你来用而已,比如说FolderListModel这个QML类型,如果真正会Qt的C++,完全可以自己封装一个model来实现FolderListModel的功能,或许更加好用。

  • Qt事例 Writing QML Extensions with C++ 可以帮助解决问题。 自己看懂。

  • 你需要知道 这个 方法 qmlRegisterType,文档里有 自己查。

  • 在C++实现业务逻辑  需要你懂Qt或者C++中与你逻辑相关的类。比如 文件操作的话 要用QFile等。

  • 其实有些业务逻辑可以直接在QML中用JS来写。比如什么onClicked事件。

  • 这个问题我已经回答第三遍了。。。没有想象的那么难吧,重点是把C++写好

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式