栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

QML访问C++自定义类成员变量

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

QML访问C++自定义类成员变量

QML访问C++自定义类成员变量 1.创建自定义QObject类MyObject,定义私有成员变量
//myobject.h
private:
    int m_iValue;
    QString m_sString;
2.光标置于成员变量上按Alt+Enter键,在.cpp文件中实现相关功能
//myobject.cpp
int MyObject::iValue() const
{
    return m_iValue;
}

void MyObject::setIValue(int newIValue)
{
    if (m_iValue == newIValue)
        return;
    m_iValue = newIValue;
    emit iValueChanged();
}
//myobject.h
Q_PROPERTY(int iValue READ iValue WRITE setIValue NOTIFY iValueChanged)
3.在自定义类MyObject头文件中声明该类可被QML引用
//myobject.h
#include  //包含QtQml
class MyObject : public QObject
{
    Q_OBJECT
	//添加宏
    QML_ELEMENT
4.在main.cpp中包含myobject.h头文件, 在 QML 系统中注册名为 MyObject 的 C++ 类型 ,并在QML中引用
//main.cpp
qmlRegisterType("MyObj",1,0,"MyObject");
//main.qml
import MyObj 1.0
5.QML访问MyObject 成员变量
//main.qml
import QtQuick
import QtQuick.Window 2.15
import MyObj 1.0
Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    MyObject{
        iValue: 10
        sString: "zhangsan"

        Component.onCompleted: {
            console.log(iValue,sString)
        }
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1034794.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号