QtQuick与QWidget嵌套使用
来源:互联网 发布:怎样修改手机游戏数据 编辑:程序博客网 时间:2024/05/18 00:46
采用Qml编写的界面程序,如何才能QWidge界面相互嵌套使用呢,有这样一个控件可以帮助你QQuickWidget,使用该控件需要在工程目录中添加:
QT += quickwidgets
直接上代码:
test.qml
import QtQuick 2.0import QtQuick 2.2import QtMultimedia 5.0Rectangle { 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 } }MyQuickWidget.h
<pre style="margin-top: 0px; margin-bottom: 0px;"><!--StartFragment--><span style=" color:#000080;">#ifndef</span><span style=" color:#c0c0c0;"> </span>MYQMLWIDGET_H
#define MYQMLWIDGET_H
#include <QWidget>
#include <QQuickWidget>
#include <QHBoxLayout>
// 该界面是继承QWidget的,这样才能与QWidghet的UI界面相结合使用
class MyQmlWidget : public QWidget
{
Q_OBJECT
public:
MyQmlWidget(QWidget *parent = 0);
~MyQmlWidget();
private:
QQuickWidget *quickwidget;
QHBoxLayout *horlayout;
signals:
void signalQmlQuit();
private slots:
void SltQmlQuit();
};
#endif // MYQMLWIDGET_H
.cpp文件
#include "myqmlwidget.h"#include <QQmlEngine>#include <QDebug>MyQmlWidget::MyQmlWidget(QWidget *parent) : QWidget(parent){ quickwidget = new QQuickWidget(); // 加入qml界面 quickwidget->setSource(QUrl("qrc:///test.qml")); quickwidget->show(); horlayout = new QHBoxLayout(this); horlayout->setContentsMargins(10, 10, 10, 10); horlayout->addWidget(quickwidget); // 还可以接受qml中的信号// connect(quickwidget->engine(), SIGNAL(quit()), this, SLOT(SltQmlQuit()));}MyQmlWidget::~MyQmlWidget(){}void MyQmlWidget::SltQmlQuit(){ qDebug() << "qml is quit"; emit signalQmlQuit();}此时在任何QWidget中都可以使用该qml完成的界面,但是该功能目前还不支持android平台,期望下一个版本可以发布到android平台上就好了。
1 0
- QtQuick与QWidget嵌套使用
- QThread与QWidget使用
- QThread与QWidget使用
- QThread与QWidget使用
- QThread与QWidget使用
- Thread与QWidget使用
- QThread与QWidget使用
- Java Web 与 QtQuick
- QtQuick 与 C++ 的结合
- Java 与 QtQuick 之 WebSocket
- qtquick 与c++交互总结
- QtQuick使用百度翻译api
- QtQuick中使用ListView注意事项
- [QtQuick]使用QtQuick制作带有光照效果的进度条
- QML与QWidget简单的联合使用(QQuickWidget衔接)
- 关于 QWidget+Qml程序部署到linux时,'module"QtQuick”is not installed' 的解决方法
- QGraphicsProxyWidget 与 QWidget 点滴
- QDialog与QWidget
- 面试中如何剔除“鱼目混珠”程序员(转)
- 花生壳tomcat搭建并发布到外网访问,类似映射软件对比
- android之service(二)
- android 修改USB显示名字
- 数组名不是指针,那个老师说数组名就是一个指针
- QtQuick与QWidget嵌套使用
- .NET Micro Framework USB移植(上)
- Hadoop是怎么分块的
- 还是不懂URL和URI的区别
- Android 如何让EditText不自动获取焦点
- iOS8 定位问题
- App Store审核指南中文版(2014.9.10更新):新增Apple Pay相关内容
- Ubuntu下eclipse创建maven项目报错解决办法
- android USB OTG功能实现