void tst_qquickwidget::errors() { QQuickWidget *view = new QQuickWidget; QScopedPointer<QQuickWidget> cleanupView(view); QQmlTestMessageHandler messageHandler; view->setSource(testFileUrl("error1.qml")); QVERIFY(view->status() == QQuickWidget::Error); QVERIFY(view->errors().count() == 1); }
int main(int argc, char *argv[]) { QApplication app(argc, argv); QWidget widget; widget.setWindowTitle(QT_VERSION_STR); const QUrl source(QUrl::fromLocalFile(QLatin1String(SRCDIR) + QStringLiteral("/main.qml"))); QHBoxLayout *hLayout = new QHBoxLayout(&widget); QGroupBox *groupBox = new QGroupBox("QuickWidget", &widget); QVBoxLayout *vLayout = new QVBoxLayout(groupBox); QQuickWidget *quickWidget = new QQuickWidget(groupBox); quickWidget->setMinimumSize(200, 200); vLayout->addWidget(quickWidget); quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView); quickWidget->setSource(source); if (quickWidget->status() == QQuickWidget::Error) { qWarning() << quickWidget->errors(); return 1; } hLayout->addWidget(groupBox); groupBox = new QGroupBox("QQuickView/createWindowContainer", &widget); vLayout = new QVBoxLayout(groupBox); QQuickView *view = new QQuickView; view->setSource(source); if (view->status() == QQuickView::Error) { qWarning() << view->errors(); return 1; } view->setResizeMode(QQuickView::SizeRootObjectToView); QWidget *container = QWidget::createWindowContainer(view, groupBox); container->setMinimumSize(200, 200); vLayout->addWidget(container); hLayout->addWidget(groupBox); const QRect availableGeometry = QApplication::desktop()->availableGeometry(&widget); widget.move(availableGeometry.center() - QPoint(widget.sizeHint().width() / 2, widget.sizeHint().height() / 2)); widget.show(); return app.exec(); }
int main(int argc, char *argv[]) { QApplication app(argc, argv); QWidget widget; widget.setWindowTitle(QT_VERSION_STR); QHBoxLayout *hLayout = new QHBoxLayout(&widget); QGroupBox *groupBox = new QGroupBox("QuickWidget", &widget); QVBoxLayout *vLayout = new QVBoxLayout(groupBox); QQuickWidget *quickWidget = new QQuickWidget(groupBox); quickWidget->setMinimumSize(360, 520); vLayout->addWidget(quickWidget); quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView); quickWidget->setSource(QUrl(QLatin1String("qrc:/main.qml"))); if (quickWidget->status() == QQuickWidget::Error) { qWarning() << quickWidget->errors(); return 1; } hLayout->addWidget(groupBox); const QUrl gallerySource(QLatin1String("qrc:/gallery.qml")); QQmlApplicationEngine engine(gallerySource); QObject *root = engine.rootObjects().value(0, Q_NULLPTR); if (!root || !root->isWindowType()) { qWarning() << "Load error" << gallerySource; return 1; } groupBox = new QGroupBox("QQuickView/createWindowContainer", &widget); vLayout = new QVBoxLayout(groupBox); QWidget *container = QWidget::createWindowContainer(qobject_cast<QWindow *>(root), groupBox); container->setMinimumSize(360, 520); vLayout->addWidget(container); hLayout->addWidget(groupBox); const QRect availableGeometry = QApplication::desktop()->availableGeometry(&widget); widget.move(availableGeometry.center() - QPoint(widget.sizeHint().width() / 2, widget.sizeHint().height() / 2)); widget.show(); return app.exec(); }