qml学习1 --c++扩展qml

本文详细介绍了如何通过C++扩展QML,包括注册类型、输出对象、属性、方法、信号、属性绑定、枚举、自定义属性类型以及生成插件的步骤,提供多个实例演示了C++与QML之间的交互操作。
摘要由CSDN通过智能技术生成

看了一些例子,记录了一些要点,只是一点笔记,并不是一个完整的文档。

例1 c++输出对象
cpp文件
qmlRegisterType<PieChart>("Charts", 1, 0, "PieChart");  //c++对象名,参数:模块名,版本号,版本号2,对象名
view.setSource(QUrl::fromLocalFile("app.qml")); //加载qml文件

class PieChart : public QDeclarativeItem


qml文件
import Charts 1.0
PieChart {
  ...
}


例2 c++输出属性 (接例1)
cpp定义中
class PieChart : public QDeclarativeItem
{
Q_PROPERTY(QString name READ name WRITE setName)
}

qml中
PieChart {
   name: "A simple pie chart"
}

例3 c++输出方法 (接例2)
cpp定义中
class PieChart : public QDeclarativeItem
{
Q_INVOKABLE void clearChart();
}

qml中
PieChart {
    id: aPieChart
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值