QtQuick一分钟技巧:使用C++保存全局数据
2016-07-14 11:16
453 查看
#ifndef QMLGLOBALDATA_H #define QMLGLOBALDATA_H #include <QObject> #include<map> #include<QVariant> using namespace std; class QmlGlobalData : public QObject { Q_OBJECT public: explicit QmlGlobalData(QObject *parent = 0); Q_INVOKABLE void _set(QString name,QVariant d) { datas[name] = d; } Q_INVOKABLE QVariant _get(QString name) { if(datas[name]!=NULL) { return datas[name]; } //如果不存在字段 返回 undefined return QVariant(""); } signals: public slots: private: std::map<QString,QVariant> datas; }; #endif // QMLGLOBALDATA_H
Component.onCompleted: { Global._set("width",100) Global._set("height",80) Global._set("title","Hello") console.log(Global._get("width")) console.log(Global._get("height")) console.log(Global._get("title")) console.log(Global._get("xxx"))//尝试获取一个不存在的数据 }
打印 qml: 100 qml: 80 qml: Hello qml: undefined
相关文章推荐
- [LeetCode] Counting Bits 计数位
- unordered_map和map的区别
- C语言 获取字符串的方法
- C语言左右法则
- Leetcode 326. Power of Three (Easy) (cpp)
- ScyllaDB:用 C++ 重写后的 Cassandra ,性能提高了十倍
- 趣味100道C语言程序num four
- C语言的一些特殊用法(#define)
- C++ 变长参数函数小结
- c++ 引用
- C语言中函数strcpy ,strncpy ,strlcpy的用法【转】
- C语言 程序 去最高最低分的评分 , 偏心和不偏心的评分
- 为什么嵌入式要用C语言编写?
- 字符串的排列组合问题
- 结构体sort快速排序
- c语言getchar()函数使用总结
- 《C++ Primer Plus》14.4 类模板 学习笔记
- c语言格式化输出函数printf()
- C++Primer(5th)第六章page190代码详解
- 详解C语言中的fopen()函数和fdopen()函数