当前位置: 首页>>代码示例>>C++>>正文


C++ QQmlEngine::incubationController方法代码示例

本文整理汇总了C++中QQmlEngine::incubationController方法的典型用法代码示例。如果您正苦于以下问题:C++ QQmlEngine::incubationController方法的具体用法?C++ QQmlEngine::incubationController怎么用?C++ QQmlEngine::incubationController使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在QQmlEngine的用法示例。


在下文中一共展示了QQmlEngine::incubationController方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: classBegin

void QQuickWindowQmlImpl::classBegin()
{
    Q_D(QQuickWindowQmlImpl);
    QQmlEngine* e = qmlEngine(this);
    //Give QQuickView behavior when created from QML with QQmlApplicationEngine
    if (QCoreApplication::instance()->property("__qml_using_qqmlapplicationengine") == QVariant(true)) {
        if (e && !e->incubationController())
            e->setIncubationController(incubationController());
    }
    Q_ASSERT(e);
    {
        QV4::ExecutionEngine *v4 = QQmlEnginePrivate::getV4Engine(e);
        QV4::Scope scope(v4);
        QV4::ScopedObject v(scope, QV4::QQuickRootItemMarker::create(e, this));
        d->rootItemMarker = v;
    }
}
开发者ID:OniLink,项目名称:Qt5-Rehost,代码行数:17,代码来源:qquickwindowmodule.cpp

示例2: engine

void tst_QQuickView::engine()
{
    QQmlEngine *engine = new QQmlEngine;
    QVERIFY(!engine->incubationController());

    QQuickView *view = new QQuickView(engine, 0);
    QVERIFY(view);
    QVERIFY(engine->incubationController() == view->incubationController());

    QQuickView *view2 = new QQuickView(engine, 0);
    QVERIFY(view);
    QVERIFY(engine->incubationController() == view->incubationController());
    delete view;
    QVERIFY(!engine->incubationController());

    engine->setIncubationController(view2->incubationController());
    QVERIFY(engine->incubationController() == view2->incubationController());
    delete view2;
    QVERIFY(!engine->incubationController());

    QQuickView *view3 = new QQuickView;
    QQuickView *view4 = new QQuickView(view3->engine(), 0);

    QVERIFY(view3->engine());
    QVERIFY(view4->engine());
    QCOMPARE(view3->engine(), view4->engine());
    delete view3;
    QVERIFY(!view4->engine());
    QTest::ignoreMessage(QtWarningMsg, "QQuickView: invalid qml engine. ");
    view4->setSource(QUrl());

    QCOMPARE(view4->status(), QQuickView::Error);
    QVERIFY(!view4->errors().isEmpty());
    QCOMPARE(view4->errors().back().description(), QLatin1String("QQuickView: invalid qml engine."));
    delete view4;
}
开发者ID:ghjinlei,项目名称:qt5,代码行数:36,代码来源:tst_qquickview.cpp


注:本文中的QQmlEngine::incubationController方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。