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

iis 网站制作常用的seo工具

iis 网站制作,常用的seo工具,设计图纸用什么软件,品牌推广公司排名qml端使用C对象类型、qml端调用C函数/c端调用qml端函数、qml端发信号-连接C端槽函数、C端发信号-连接qml端函数等。 代码资源下载: https://download.csdn.net/download/TianYanRen111/88779433 若无法下载,直接拷贝以下代码测试即可。 main.cpp #incl…

qml端使用C++对象类型、qml端调用C++函数/c++端调用qml端函数、qml端发信号-连接C++端槽函数、C++端发信号-连接qml端函数等。

在这里插入图片描述

代码资源下载:
https://download.csdn.net/download/TianYanRen111/88779433
若无法下载,直接拷贝以下代码测试即可。

main.cpp

#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQmlContext>
#include "MyObject.h"
#include "TestObject.h"int main(int argc, char *argv[])
{QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);QGuiApplication app(argc, argv);QQmlApplicationEngine engine;const QUrl url(QStringLiteral("qrc:/main.qml"));QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,&app, [url](QObject *obj, const QUrl &objUrl) {if (!obj && url == objUrl)QCoreApplication::exit(-1);}, Qt::QueuedConnection);qmlRegisterType<MyObject>("com.mycompany.qmlcomponents", 1, 0, "MyObject");qmlRegisterType<TestObject>("com.mycompany.qmlcomponents", 1, 0, "TestObject");engine.load(url);//auto objs = engine.rootObjects();auto window = objs.first();// c++ 绑定信号槽,C++端发信号// 此种形式必须将信号设置为 QVariant类型MyObject obj;QObject::connect(&obj, SIGNAL(sendCpp2(QVariant, QVariant)), window, SLOT(slotCpp(QVariant, QVariant)));obj.test2(); // 发送信号// c++端调用qml端函数qDebug()<<objs.first()->objectName();QVariant ret;QVariant arg1 = 123333;QVariant arg2 = "zhangsan===";QMetaObject::invokeMethod(window, "qmlFunc", Q_RETURN_ARG(QVariant, ret),Q_ARG(QVariant, arg1),Q_ARG(QVariant, arg2));return app.exec();
}

MyObject.h

#ifndef MYOBJECT_H
#define MYOBJECT_H#include <QObject>
#include <QDebug>class MyObject : public QObject
{Q_OBJECTQ_PROPERTY(int num READ num WRITE setNum NOTIFY numChanged)Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)public:explicit MyObject(QObject *parent = nullptr);    int num() const;QString name() const;Q_INVOKABLE void printMessage();Q_INVOKABLE void test1() {emit sendCpp1("--------------111111-------");}void test2() {emit sendCpp2("---------2222222222------------series", 222222222222);}public slots:void setNum(int num);void setName(QString name);void onMsg(QString msg, int value);signals:void numChanged(int num);void nameChanged(QString name);void sendCpp1(QString message);void sendCpp2(QVariant message, QVariant value);private:int m_num;QString m_name;
};#endif // MYOBJECT_H

MyObject.cpp

#include "MyObject.h"MyObject::MyObject(QObject *parent) : QObject(parent)
{}int MyObject::num() const
{return m_num;
}QString MyObject::name() const
{return m_name;
}void MyObject::printMessage()
{qDebug() << "@@@@@@@@@@@@@@@ message is:> 11111111111";
}void MyObject::setNum(int num)
{if (m_num == num)return;m_num = num;emit numChanged(m_num);
}void MyObject::setName(QString name)
{if (m_name == name)return;m_name = name;emit nameChanged(m_name);
}void MyObject::onMsg(QString msg, int value)
{qDebug() << "################> msg:value is:> " << msg << value;
}

TestObject.h

#ifndef TESTOBJECT_H
#define TESTOBJECT_H#include <QObject>class TestObject : public QObject
{Q_OBJECTQ_PROPERTY(QString message READ message WRITE setMessage NOTIFY messageChanged)public:explicit TestObject(QObject *parent = nullptr);QString message() const {return m_message;}public slots:void setMessage(QString message) {{if (m_message == message)return;m_message = message;emit messageChanged(m_message);}}signals:void messageChanged(QString message);private:QString m_messsage;QString m_message;
};#endif // TESTOBJECT_H

main.qml

import QtQuick 2.0
import QtQuick.Controls 2.12
import QtQuick.Window 2.12
import QtQuick.Layouts 1.3
import QtQml 2.12
import com.mycompany.qmlcomponents 1.0Window {id: windowobjectName: "myWindow"visible: truewidth: 600height: 250title: qsTr("Hello World")signal sendMsg(string msg, int value)function slotCpp(message, value) {console.log(">>>... " + message + " " + value)}function qmlFunc(msg, value) {console.log("......qml function... msg:value:> ", msg, value)}MyObject {id: myObjectnum: 101name: "zhangSan"onNumChanged: {console.log("...new num is:> ", num)}onNameChanged: {console.log("...new name is:> ", name)}Component.onCompleted: {console.log("...init num and name is:> " + num + " " + name)}}TestObject {id: testObjectmessage: "HelloWorld..."onMessageChanged: {console.log("...new message is:> ", message)}Component.onCompleted: {console.log("...init message is:>" + message)}}Column {spacing: 10Button {text: "qml中测试c++对象类型"onClicked: {myObject.num = 102myObject.name = "wang"testObject.message = "HelloWorld, I love you..."}}Button {text: "qml端调用C++端函数"onClicked: {myObject.printMessage()}}Button {text: "qml端发送信号, 连接C++端槽函数"onClicked: {sendMsg("...qml signal", 66666666)}}Button {text: "C++端发送信号, 连接qml端槽函数"onClicked: {myObject.test1()}}}// qml信号连接C++槽函数:方式一//    Connections {//        target: window//        onSendMsg: {//            myObject.onMsg("...qml signal", 8888888)//        }//    }//qml信号连接C++槽函数:方式二Component.onCompleted: {window.sendMsg.connect(myObject.onMsg)}Connections {target: myObjectonSendCpp1: {console.log("......======" + message)}}
}

请添加图片描述

参考文章
https://blog.csdn.net/wzz953200463/article/details/129504685

http://www.yidumall.com/news/37318.html

相关文章:

  • 网站做百度收录的意义网站整站优化公司
  • 贵阳做网站的大公司有哪些长春seo结算
  • 武汉网页设计高级培训学校黑帽seo之搜索引擎
  • 网站开发文档模板济南百度推广优化
  • 西安网站建设bieleng来几个关键词兄弟们
  • java做网站开发的流程国际羽联最新排名
  • b2c的电子商务的网站建设b站推广是什么意思
  • b2b网站做网络推广有用吗企业邮箱登录入口
  • 柳州正规网站建设加盟iis搭建网站
  • 吴忠门户网站建设2022小说排行榜百度风云榜
  • wordpress内部优化seo综合查询软件排名
  • 简述网页制作的步骤安徽网络关键词优化
  • 作网站seo服务是什么
  • 建设网站的网站有哪些品牌搜索引擎服务优化
  • 做网站需要准备什么东西百度云怎么找资源
  • 临沂网站建设微信青岛seo网络优化公司
  • 成都电子网站建设多少钱网络平台推广是干什么
  • 使用国外空间的网站外贸平台自建站
  • 建立网站的风险抖音搜索关键词推广
  • 知名seo网站优化公司郑州seo排名优化
  • 循环视频做网站背景拉新人拿奖励的app
  • 长沙建企聘企业管理有限公司网站seo关键词排名
  • 住房建设局子网站网络科技公司经营范围
  • 活动推广方案策划长春做网站公司长春seo公司
  • 建设网站比较好公司吗软文推广代表平台
  • 东莞活动网站设计模板百度seo自然优化
  • 用蜗牛做logo的网站百度应用中心
  • 做公司的网站的需求有哪些内容友情链接查询工具
  • 免费做期中考试的网站网络平台推广是干什么
  • 三门峡市住房的城乡建设局网站百度推广费