QML界面嵌入QWidget使用

分别介绍Qt4与Qt5版本将QML界面嵌入到QWidget中使用。

Qt4使用方法

  • 项目文件添加QT += declarative
    1
    2
    3
    QDeclarativeView *view = new QDeclarativeView;
    view->setSource(QUrl::fromLocalFile("file.qml"));
    view->show();

Qt5使用方法

  • 项目文件添加QT += quickwidgets
    1
    2
    3
    QQuickWidget *view = new QQuickWidget;
    view->setSource(QUrl::fromLocalFile("file.qml"));
    view->show();

总结

  • 由于QDeclarativeView与QQuickWidget都是继承于QWidget,可以和QWidget一样的操作;
  • setSource函数能够将qml文件实例化,如果多次同样的URL调用则会重新实例化;
  • 本地文件需要使用QUrl::fromLocalFile。