学习qml(五) c++与qml的交互

前言:看来很久的qml,一直在想为什么要学qml(脑子里有个模糊的概念,qml可以做渲染,做界面更简单)。直到看见

 

 

一、cpp代码需要设置的点

  1.  定义可以导出的c++类

        条件:从QOBJEC 或者 它的派生类继承,使用Q_OBJECT宏

  • 2、定义类的成员函数时  需要用Q_INVOKABLE(译:可调用的) 宏来修饰;并且这个宏必须放在返回类型前面。eg:
 
  //定义了《可调用的》两个函数
    Q_INVOKABLE GenerateAlgorithm algorithm() const;
//返回值为GenerateAlgorithm的一个函数
    Q_INVOKABLE void setAlgorithm(GenerateAlgorithm algorithm);

 3、

 Q_INVOKABLE 能够调用不能修改,Q_PROPERTY 能够改变值和发送信号等

 

二、qml设置的点

 1、注册qml类型

https://doc.qt.io/qt-5.12/qqmlengine.html#qmlRegisterType

qmlRegisterType<ColorMaker>("an.qt.ColorMaker", 1, 0, "ColorMaker");
//调用的对象  名称 版本(主) 版本(副) 对象


函数原型(int qmlRegisterType (const char *uri, int versi onMajor,int versionMinor, const char *qmlName) ;)

下面就可以引用了

 

代码详见附录   //download.csdn.net/download/a1ngel/12265044 随便下

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值