请选择 进入手机版 | 继续访问电脑版
快捷导航
1 62

qml cpp 主函数 解析

anymsg_renzong 于 2018-4-22 23:16 发表在 [技术分享] [复制链接]
本帖最后由 anymsg_renzong 于 2018-4-22 23:25 编辑

qml cpp 主函数 解析
先看一下 主函数内容

  1. #include <QGuiApplication>
  2. #include <QQmlApplicationEngine>

  3. int main(int argc, char *argv[])
  4. {
  5.     QGuiApplication app(argc, argv);

  6.     QQmlApplicationEngine engine;
  7.     engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
  8.     if (engine.rootObjects().isEmpty())
  9.         return -1;

  10.     return app.exec();
  11. }
复制代码


#incldue 不多说
包含文件主要是和启动方式有关。

QQmlApplicationEngine 搭配 Window 启动 Qt quick App 方式,另一种方式搭配 Item 启动 。


使用QQuickView显示QML文档,对窗口的控制权(比如设置窗口标题、Icon、窗口的最小尺寸等)在C++代码;
而使用QQmlApplicationEngine加载以Window为根对象的QML文档,QML文档则拥有窗口的完整控制权,可以直接设置标题、窗口尺寸等属性。


鉴于之后,需完成混编的需求,暂时选用QQmlApplicationEngine的方式。


若出现 :-1: error: File Makefile.Debug doesn't exist.


请修改





.exec();

Enters the main event loop and waits until exit() is called, and then returns the value that was set to exit() (which is 0 if exit() is called via quit()).


流程:


定义一个QQmlApplicationEngine实例,代表QML引擎,
然后load()放在qrc的主QML文档main.qml中。
最后就是启动Qt应用的主事件循环:app.exec()。

main.qml是应用的主QML文档















本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Connecting & Messaging from Any.

共 1 个关于本帖的回复 最后回复于 2018-4-22 23:28

anymsg_renzong 版主 发表于 2018-4-22 23:28:53 | 显示全部楼层
qrc 为资源文件
Connecting & Messaging from Any.
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

推荐板块

精彩推荐

热门排行

明星用户

手机版|小黑屋|AnyMSG ( ©AnyMSG 2009 - 2017 · ICP备16009991号 )

GMT+8, 2019-2-18 20:25