当前位置: 首页 > news >正文

邢台 网站建设足球比赛直播

邢台 网站建设,足球比赛直播,网站源码 源码论坛 源码之家 免费源码 商业源码 源码下载,郑州疫情非常厉害学习qml系列之一说明: 学习qml系列之qwiget和qml信号槽的交互使用,并在qwidget中显示qml界面 在qml中发送信号到qwidget里 在qwidget里发送信号给qml 在qwidget里面调用qml界面方式 方式一:使用QQuickView 这个是Qt5.0中提供的一个类&…
学习qml系列之一

说明:
学习qml系列之qwiget和qml信号槽的交互使用,并在qwidget中显示qml界面

在qml中发送信号到qwidget里
在qwidget里发送信号给qml

在qwidget里面调用qml界面方式

方式一:使用QQuickView
这个是Qt5.0中提供的一个类,继承自QQickWindow中,用来显示qt quick用户界面:

QQuickView *view = new QQuickView;
view->setSource(QUrl::fromLocalFile("main.qml"));
view->show();

QQuickView基于QWindow,需要转换成 QWidget才能使用,还需要如下转换

     QQuickView *pView = new QQuickView();QWidget *Widget = QWidget::createWindowContainer(pView, this);pView->setResizeMode(QQuickView::SizeRootObjectToView);pView->setSource(QUrl("qrc:/main.qml"));

这样后面能直接调用由qml转换成的QWidget界面了。

方式二:使用QQuickWidget

QQuickWidget *pWidget = new QQuickWidget();
pWidget->setResizeMode(QQuickWidget::SizeRootObjectToView);
pWidget->setSource(QUrl("qrc:/main.qml"));

该方法在Qt5.3中提供的一个类,继承自QWidget,是QQuickWidget一个很方便的包装器,用于显示Qt Quick用户界面

源码:
qml文件源码:

import QtQuick 2.1Rectangle {id: rootcolor: "green"width: 200height: 200// 发送给 Qt Widgets 的信号signal qmlSignal// 从 Qt Widgets 接收到的信号signal cSignal//信号的名称不能以大写开头Text {id: myTexttext: "Click me"font.pointSize: 14anchors.centerIn: parent}MouseArea {anchors.fill: parentonClicked: qmlSignal()}// 信号处理程序(处理从 Qt Widgets 接收到的信号)onCSignal: {root.color = "blue"myText.text = "Call the qml signal handler"}
}

注意:qml中信号的名称不能以大写开头,然后添加到Qt的资源文件中

添加qml quick

QT       += core gui qml quick
#include "widget.h"
#include "ui_widget.h"
#include "widget.h"
#include <QQuickView>
#include <QVBoxLayout>
//#include <QQuickWidget>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{
//    ui->setupUi(this);resize(300, 300);// 方式一QQuickView *pView = new QQuickView();QWidget *pWidget = QWidget::createWindowContainer(pView, this);pView->setResizeMode(QQuickView::SizeRootObjectToView);pView->setSource(QUrl("qrc:/main.qml"));// 方式二
//    QQuickWidget *pWidget = new QQuickWidget();
//    pWidget->setResizeMode(QQuickWidget::SizeRootObjectToView);
//    pWidget->setSource(QUrl("qrc:/main.qml"));m_pButton = new QPushButton(this);m_pButton->setText("Qt Widgets...");QVBoxLayout *pLayout = new QVBoxLayout();pLayout->addWidget(pWidget);pLayout->addWidget(m_pButton);pLayout->setSpacing(10);pLayout->setContentsMargins(10, 10, 10, 10);setLayout(pLayout);// QML 与 Qt Widgets 通信QObject *pRoot = (QObject*)pView->rootObject();
//    QObject *pRoot = (QObject*)pWidget->rootObject();if (pRoot != NULL) {connect(pRoot, SIGNAL(qmlSignal()), this, SLOT(receiveFromQml()));connect(m_pButton, SIGNAL(clicked(bool)), pRoot, SIGNAL(cSignal()));}}Widget::~Widget()
{delete ui;
}void Widget::receiveFromQml()
{m_pButton->setText("Call the C++ slot");
}

由于我使用的版本时5.14.1版本,用的QQuickView类

效果如下图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.ds6.com.cn/news/26476.html

相关文章:

  • 泰安做网站的公司广告咨询
  • 网页图片居中怎么设置seo简单优化
  • 佛山建设专业网站培训心得体会万能模板
  • 廊坊做网站的企业哪家好如何在百度上做产品推广
  • 页面设计好了怎么做百度优化怎么做
  • 百度站长查询工具全国疫情防控最新数据
  • 新疆公司网站怎么做推广引流吸引人的标题
  • 北京的重要的网站地推平台
  • asp网站 seo百度网站管理员工具
  • wordpress怎么修改模板惠州抖音seo
  • 邯郸网站建设怎么开发百度网盘网页版登录入口
  • 个人网站制作流程图片搜索引擎国外
  • 首页设计的公司官网seoul什么意思
  • 网站建设书籍下载网络推广培训
  • 用asp做网站视频seo包年服务
  • 高端网站建设 企业网站建站长尾关键词排名工具
  • 上海千途建站seo博客是什么意思
  • 域名注册商网站社区营销
  • 做网站销售好不好自己怎么做一个网页
  • 怎样做视频播放网站教育培训加盟
  • 做哪个网站招出国打工的多长沙正规seo优化公司
  • 王野天葛优seo研究
  • 做微信h5的网站西安网站关键词推广
  • b2c商城网站合同暴疯团队seo课程
  • 彩票网站什么做搜索引擎网站提交入口
  • 伯维网站建设百度网站官网入口网址
  • 移动电商网站开发南京seo排名公司
  • 南阳网站建设大旗电商宁波seo整体优化公司
  • 鞍山做网站的公司天津seo顾问
  • 福州外贸网站制作关键词seo服务