`

QVariant

    博客分类:
  • Qt
 
阅读更多
QVariant:可以接收int,double,QDatetime,QPoint,QMap,QList...多种数据类型,便是和boost:variant不太一样,它并不是一个模板类,一次只能接收一个数据
#include<QVariant>
#include<iostream>
#include<QDateTime>
#include<QPoint>
using namespace std;

int main()
{
    QVariant v = 10;
    int i = v.toInt();
    cout << i << endl;
    v = "abc";
    cout << v.toString().toStdString() << endl;
    v.setValue(20);
    cout << v.toDouble() << endl;
    cout << v.canConvert<int>()<<endl;
    QDateTime dt;
    cout << v.canConvert<QDateTime>()<<endl;//0
    cout << dt.currentDateTime().toLocalTime().toString("yyyy.MM.dd").toStdString()<<endl;
    v.setValue(dt);//equals to v = dt;
    if(v.type()==QVariant::DateTime){
        cout << v.toDateTime().currentDateTime().toLocalTime().toString("yyyy.MM.dd").toStdString() << endl;
    }
    cout << v.canConvert<QDateTime>()<<endl;//1
}



10
abc
20
1
0
2011.07.02
2011.07.02
1
分享到:
评论

相关推荐

    cpp-qtjson用于JSON数据和QVariant层次间的相互解析的简单类

    在处理JSON(JavaScript Object Notation)数据时,Qt提供了一个名为`QJson`的模块,而`cpp-qtjson`则是针对这个模块的一个简单封装,用于方便地在JSON数据和Qt的`QVariant`类型之间进行转换。`QVariant`是Qt中的一...

    cpp-QJson将JSON数据映射到QVariant对象的基于Qt的库

    QJson是一个针对Qt框架设计的开源库,它允许开发者方便地将JSON(JavaScript Object Notation)数据转换为QVariant对象,QVariant是Qt框架中一个非常重要的类型,它可以存储多种类型的值,包括基本类型、字符串、...

    QTreeWidgetItem的setData(int column,int role,QVariant& data)等,

    Qt中QVariant是多种类型的联合,QVariant类中有个SetValue(T& value)方法,将自定义 T 类型的数据保存到QVariant对象中,可以理解为是自定义类型被封装成了QVariant的形式,这样,我们自定义的T类型的对象就能够通过...

    Qt5开发及实例-CH206.rar,Qt5介绍QVariant类的用法的代码

    开发及实例,实例CH206,介绍QVariant类的用法。 新建Qt Widgets Application(详见1.3.1节),项目名称为“myVariant”,基类选择“QWidget”,类名保持“Widget”不变,取消选择“创建界面”复选框。建好项目后,在...

    Qt之QVariant的使用分析

    5.保证无毒 1.简单,方便,实用 3.实例可以自行改用 1.如有非法,本人无法律责任! 8.更多作品,查找标签“朱建强”7.... 4.如需联系我请看左边数字!1.如不知代表何物,那就放弃计算机吧! 0....CSDN老板不让我上传联系方式。

    基于Qt的函数对象(泛化仿函数)设计,可在线程中运行并通过信号返回QVariant

    基于Qt的函数对象(泛化仿函数)设计,可在线程中运行并通过信号返回QVariant

    libqt4json:Qt4 QVariant的Serializator / Deserializator JSON-开源

    Qt4 QVariant的Serializator / Deserializator JSON

    QtQVariant.7z

    这包括使用QVariant::type()获取类型信息,QVariant::canConvert()检查能否转换为目标类型,QVariant::to*()系列方法进行类型转换,以及QVariant::isValid()检查是否为有效值等。 此外,学习如何在信号和槽机制中...

    精通qt4编程(源代码)

    \13.3 QVariant 339 \13.4 Qt的算法 341 \13.5 正则表达式 342 \13.5.1 基本的正则表达式 342 \13.5.2 文字捕获 344 \13.6 小结 345 \高 级 篇 \第14章 XML 348 \14.1 DOM 348 \14.1.1 DOM入门 348 \14.1.2 使用DOM ...

    Qt

    在Qt框架中,`QVariant`是一个非常重要的数据类型,它允许存储多种不同的数据类型,如整型、浮点型、字符串、布尔值等,并且能够自动处理数据类型的转换。这对于编写灵活且可扩展的代码非常有用,特别是当你需要处理...

    精通Qt4编程(第二版)源代码

    \13.3 QVariant 339 \13.4 Qt的算法 341 \13.5 正则表达式 342 \13.5.1 基本的正则表达式 342 \13.5.2 文字捕获 344 \13.6 小结 345 \高 级 篇 \第14章 XML 348 \14.1 DOM 348 \14.1.1 DOM入门 348 \...

    Qt Websocket通讯实例,自己封装了一个websocket通讯的类。

    在本文中,我们将深入探讨如何使用Qt框架实现WebSocket通信,并基于提供的标题和描述,了解一个已封装好的WebSocket通信类的实例。WebSocket是一种在客户端和服务器之间建立长久连接的协议,它允许双向通信,即...

    Qt中调用函数如何返回多个值的Qt文件

    results &lt;&lt; QVariant::fromValue(...) &lt;&lt; QVariant::fromValue(...) &lt;&lt; QVariant::fromValue(...); return results; } ``` 5. **使用信号和槽** Qt的信号和槽机制是事件驱动编程的核心。当一个函数执行完毕,...

    【Qt QAxObject】使用 QAxObject 高效任意读写 Excel 表

    QAxObject* range = worksheet-&gt;querySubObject("Range(const QVariant&, const QVariant&)", "A1", "A1"); // 获取范围"A1" QString value = range-&gt;property("Value").toString(); // 读取单元格值 range-&gt;dynamic...

    qt的Excel操作类

    例: QString szXlsFile = tr("D:\\WUTEMP\\WUTEMP\\TEMp.... xlsObj.qrySubObj("Range(const QVariant&)", QVariant("A3")); xlsObj.getObj()-&gt;SetValue("中国人民解放军"); qxls.getXlsBook()-&gt;SaveAs(szXlsFile);

    Qt图片导出到Excel中

    range-&gt;dynamicCall("PasteSpecial(const QVariant&, const QVariant&, const QVariant&, const QVariant&, const QVariant&, const QVariant&)", "Picture", false, true, true, true, true); ``` 这里,我们创建...

    Qt xlsx库()excel

    Qt xlsx 库是专为 Qt 平台设计的一个用于处理 Microsoft Excel 文件的库,它允许程序员在 Qt 应用程序中创建、读取和修改 .xlsx 格式的电子表格。这个库通常用于那些需要与 Excel 数据进行交互的项目,比如数据分析...

    Qt之单例 - 读写配置文件

    QVariant value(const QString& key, const QVariant& defaultValue = QVariant()); }; #endif // CONFIGINFORMATION_H ``` 在上述代码中,我们声明了一个静态成员变量`m_instance`来存储单例对象,并声明了私有...

    Qt自定义事件

    在这个例子中,我们使用`QVariant`来存储自定义数据,因为它可以容纳各种类型的数据。 ### 发送自定义事件 1. **postEvent**: `postEvent`函数用于异步地将事件发送到指定的接收对象。这将把事件放入接收对象的...

    Qt窗口传值

    - 在定义信号时,可以使用QVariant作为参数类型,如`emitDataChanged(QVariant data)`。 - 在接收端,槽函数需要解包QVariant来获取实际的数据。 3. **利用QObject::setProperty和QObject::property进行属性传递*...

Global site tag (gtag.js) - Google Analytics