qml-main.cpp中的两种启动Qt Quick App模式

 现有两种启动Qt Quick App 模式:

  • QQmlApplicationEngine搭配Window。
  • QQuickView搭配Item。

 qt默认使用第一种方法。

  QQmlApplicationEngine搭配Window:

 1 #include <QGuiApplication>
 2 #include <QQmlApplicationEngine>
 3 
 4 int main(int argc, char *argv[])
 5 {
 6 #if defined(Q_OS_WIN)
 7     QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
 8 #endif
 9 
10     QGuiApplication app(argc, argv);
11 
12     QQmlApplicationEngine engine;
13     engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
14     if (engine.rootObjects().isEmpty())
15         return -1;
16 
17     return app.exec();
18 }

  QQuickView搭配Item:

#include <QGuiApplication>
#include <QQuickView>

int main(int argc, char *argv[])
{
#if defined(Q_OS_WIN)
    QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif

    QGuiApplication app(argc, argv);

    QQuickView viewer;
    viewer.setResizeMode(QQuickView::SizeRootObjectToView);
    viewer.setSource(QUrl("qrc:///main.qml"));
    viewer.show();

    return app.exec();
}

                                                                   ——来自《Qt Quick核心编程》4.1.2

posted @ 2020-02-16 13:38  mxydsg8858  阅读(488)  评论(0编辑  收藏  举报