What's the difference between QQuickView and QQuickWindow?

后端 未结 1 434
独厮守ぢ
独厮守ぢ 2021-02-18 22:07

I am currently working with Qt 5.2.1... and I have a (maybe stupid?) question: What is the difference between QQuickView and QQuickWindow?

I re

1条回答
  •  余生分开走
    2021-02-18 22:50

    From the Qt documentation:

    The QQuickView class provides a window for displaying a Qt Quick user interface.

    QQuickView is a convenience subclass of QQuickWindow which will automatically load and display a QML scene when given the URL of the main source file.

    So QQuickView is a subclass of QQuickWindow which manages displaying a scene from a QML file and could be used easily like:

    QQuickView *view = new QQuickView;
    view->setSource(QUrl::fromLocalFile("myqmlfile.qml"));
    view->show();
    

    For displaying a graphical QML scene in a window you can also use the QQuickWindow class.

    Also from the Qt documentation:

    A QQuickWindow always has a single invisible root item. To add items to this window, reparent the items to the root item or to an existing item in the scene.

    So it can be used like:

    QQmlApplicationEngine engine;
    engine.load(QUrl("myqmlfile.qml"));
    
    QObject *topLevel = engine.rootObjects().value(0);
    QQuickWindow *window = qobject_cast(topLevel);
    
    window->show();
    

    0 讨论(0)
提交回复
热议问题