用单体类型注册单体对象到qml中
来源:互联网 发布:瑞斯康微电子知乎 编辑:程序博客网 时间:2024/05/21 09:22
一个单体对象不需要用户手动构造实例就可以将属性,信号,方法在命名空间里暴露。QObject单体类型是非常有效和安全的方式提供函数和全局属性值。单体对象不能和QQmlContext联合访问引擎的内容。单体对象有QQmlEngine构造,随着QQmlEngine销毁而随之销毁。
1、QJSValue 注册一个Value属性
static QJSValue getCountStatic(QQmlEngine* engine,QJSEngine* scriptEngine){Q_UNUSED(engine);static int seedValue = 5;QJSValue example = scriptEngine->newObject();example.setProperty("someProperty",++seedValue);return example;}
注册:
qmlRegisterSingletonType("Qt.example.signle",1,0,"MyApi",getCountStatic);
//脚本中使用
property var somebee:ExampleSingle.MyApi.someProperty2、QObject*
class SingleObject : public QObject{Q_OBJECTQ_PROPERTY(int someindex READ someindex WRITE setSomeIndex NOTIFY indexChange)public:SingleObject(QObject* parent = 0);~SingleObject();int someindex() const;void setSomeIndex(int index); Q_INVOKABLE int doSomething(); signals:void indexChange(int index);protected:private:int m_someindex;};
使用Q_INVOKABLE注册
static QObject* getQtObject(QQmlEngine* engine,QJSEngine* scriptEngine){Q_UNUSED(engine);Q_UNUSED(scriptEngine);SingleObject* obj = new SingleObject;return obj;}注册:qmlRegisterSingletonType<SingleObject>("Qt.example.signle",1,0,"MyQtApi",getQtObject);
脚本调用:
import MessagePerson 1.0import Qt.example.signle 1.0 as ExampleSingleMessage{ author:"王bull"authorDate:new Date()property var somebee:ExampleSingle.MyApi.somePropertyproperty var qtbee:ExampleSingle.MyQtApi.doSomething()}直接上代码了,会使用即可,C++单体在脚本中的调用介绍到这里了。
0 0
- 用单体类型注册单体对象到qml中
- 引用类型---单体内置对象
- 25. 单体内置对象
- 单体内置对象
- javaScript单体内置对象
- 单体内置对象
- ECMAScript-单体内置对象
- js中单体
- js--引用类型单体内置对象--Math,随机数生成
- js学习笔记:引用类型——单体内置对象
- 第5章 引用类型(11)单体内置对象
- 引用类型(五)——单体内置对象
- 单体内置对象,内置对象
- 五、引用类型Ⅱ(RegExp、Function、基本包装类型、单体内置对象)
- DOM笔记(九):引用类型、基本包装类型和单体内置对象
- 了解DOM:引用类型,基本包装类型和单体内置对象
- Qt中注册QML类型
- 微服务到单体架构的演变
- linux进程的管理命令
- 基于jdk6 API 开发 WebService(一)
- iOS开发常用国外网站清单
- TQ210学习之路(1)——移植软件
- Eclipse 炫黑主题配色
- 用单体类型注册单体对象到qml中
- 分段表视图cell乱的问题(分段表示图cellForRowAtIndexPath的正确实现)
- Android-IntentService
- 为项目编写Readme.MD文件
- PayPal站点的远程代码执行漏洞演示【附视频】
- opencv
- 五分钟学会使用spring-data-cassandra快速实现数据的访问
- 无锡华翎钢管舞酒吧领舞性感热舞爵士舞火热报名中
- 黑马程序员——Java基础---自定义异常类