#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQmlContext>
#include <QtWidgets/QWidget>
#include <QVBoxLayout>
#include <QtQuickWidgets/QtQuickWidgets>
#include "QFrameless/ShadowWindow.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QQuickWidget quickWidget;
#if 1
QShadowWindow<QWidget>* pWgt = new QShadowWindow<QWidget>;
pWgt->resize(400, 220);
auto pLayout = pWgt->clientLayout();
pLayout->setContentsMargins(0,0,0,0); // set margins
pLayout->addWidget(&quickWidget);
#else
QWidget* pWgt = new QWidget; // pointer, crashed it not(load qml)
pWgt->resize(400, 220);
QVBoxLayout* pLayout = new QVBoxLayout;
{
// layout
pLayout->setContentsMargins(0,0,0,0); // set margins
pLayout->addWidget(&quickWidget);
pWgt->setLayout(pLayout);
}
#endif
quickWidget.setResizeMode(QQuickWidget::SizeRootObjectToView); // fill item to quickwidget
{
// set context property
//quickWidget.rootContext()->setContextProperty("modelMsg", pModelMsg);
}
quickWidget.setSource(QUrl("qrc:/qml/QmlQidgetDemo.qml"));
pWgt->show();
return app.exec();
}
PS: . pro引入QT += quick widgets gui qml quickwidgets