54 lines
1.4 KiB
C++
54 lines
1.4 KiB
C++
#include "mainwindow.h"
|
|
#include "ui_mainwindow.h"
|
|
#include "globalvar.h"
|
|
#include <QQuickView>
|
|
#include <QtQuickWidgets/QQuickWidget>
|
|
#include <QQmlComponent>
|
|
#include <QQmlContext>
|
|
#include "sharedata.h"
|
|
#include <QLayout>
|
|
#include <QQmlApplicationEngine>
|
|
|
|
QmlShareData gGlobal;
|
|
|
|
|
|
static void rangeObjectList(QObject*obj,int indent){
|
|
QObjectList child = obj->children();
|
|
QString tmp("");
|
|
for(int i = 0;i < indent;i++)
|
|
tmp +=" ";
|
|
|
|
for(int i = 0;i < child.size();i++){
|
|
qDebug()<<tmp + child.at(i)->objectName() + " " + child.at(i)->metaObject()->className();
|
|
if(child.at(i)->children().size() > 0){
|
|
rangeObjectList(child.at(i),indent + 1);
|
|
}
|
|
}
|
|
}
|
|
|
|
MainWindow::MainWindow(QWidget *parent) :
|
|
ui(new Ui::MainWindow),
|
|
QssMainWindow(parent)
|
|
{
|
|
ui->setupUi(this);
|
|
QQuickWidget *m_quickWidget=new QQuickWidget();
|
|
QQmlEngine *engine = m_quickWidget->engine();
|
|
|
|
QQmlContext* ctx = engine->rootContext();
|
|
ctx->setContextProperty("DataWrap", &gGlobal);
|
|
QUrl source("qrc:/main.qml");
|
|
m_quickWidget->setResizeMode(QQuickWidget::SizeRootObjectToView );
|
|
m_quickWidget->setSource(source);
|
|
|
|
// m_quickWidget->rootContext()->setContextProperty("DataWrap",&gGlobal);
|
|
this->setStyleSheet("margin: 0px;");
|
|
gGlobal.SetQuickView(m_quickWidget);
|
|
ui->centralwidget->layout()->addWidget(m_quickWidget);
|
|
rangeObjectList(this,0);
|
|
}
|
|
|
|
MainWindow::~MainWindow()
|
|
{
|
|
delete ui;
|
|
}
|