在Qt中的开发起始都是通过C++代码在qwidget mainwidget中开发的,渐渐的有了qml ,是要用qtquick,
它的语法与xml,html的语法近似。所以经常学过html网页的学这个上手比较快.
在开发过程中qml常常会用在界面开发,通常都会Qwidget与qml进行结合使用
我们开始回归正题,到底怎么让qwidget与qml交互
1.首先我们先准备一个qml文件,名称为 main.qml,并将此文件放置到构建的目录中,一般在debug中,如果你
取消了那个√,那就要将这个文件放置到此项目的源目录中。
main.qml如下
import QtQuick 2.0
import QtQuick 2.2
import QtMultimedia 5.0
Rectangle {
id: page
width: 500; height: 200
color: "lightgray"
Text {
id: helloText
text: "Hello world!"
y: 30
anchors.horizontalCenter: page.horizontalCenter
font.pointSize: 24; font.bold: true
}
}
2.新建一个Qt Widgets Application项目,自己命名项目,一直点下一步,完成。
3.添加现有文件,选择本目录的main.qml
4.添加如下到.pro文件中
QT += quickwidgets
5.添加头文件
#include <QUrl>
#include <QtQuickWidgets/QQuickWidget>
6.添加.cpp代码
this->resize(800,800);
// QQuickWidget *qw = Q_NULLPTR;
QQuickWidget *qw = new QQuickWidget(this);
qw->move(50,50);
qw->resize(500,500);
// qw->setResizeMode(QQuickWidget::SizeRootObjectToView);
qw->setSource(QUrl::fromLocalFile( "main.qml"));
7.演示效果