QML与QWidget简单的联合使用(QQuickWidget衔接)

如果碰到这种情况,可能软件整体并不复杂也不需要太多炫酷的效果,此时我们可能选择QWidget体系来做。但是,可能某个小部件又非常需要炫酷的效果,QWidget并不是我们此时想要的,可以用一个简单的类QQuickWidget调用QML来实现这种效果。只需要两步哦~

 

1、首先添加库
QT       += quickwidgets

 

2、头文件

#include
3、核心代码

    QQuickWidget* m_quickWidget = Q_NULLPTR;

    m_quickWidget = new QQuickWidget(this);//this基类为QWidget

    m_quickWidget->move(你需要的位置);

    m_quickWidget->resize(你需要的尺寸);

 

很关键,默认的是SizeViewToRootObject,需要设置到View

    m_quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView);

设置qml文件

    QUrl source("qrc:你需要的QML文件.qml");

    m_quickWidget->setSource(source);

 

注意:这里调用的QML不可以用锚布局。

你可能感兴趣的:(//Qt,QML)