C++ Qcon/QPixmap/QImage的QVariant
我想提取存储在QTreeWidget的一个列中的QIcon,如Qt::DecorationRoleC++ Qcon/QPixmap/QImage的QVariant,c++,qt,qvariant,C++,Qt,Qvariant,我想提取存储在QTreeWidget的一个列中的QIcon,如Qt::DecorationRole QTreeWidgetItem *item = ui->treeWidget->topLevelItem(index); const QIcon &icon = item->data(0, Qt::DecorationRole)._howToConvert_(); 但是,我只能以QVariant的形式获取数据,并且找不到从QVariant转换为QIcon的函数。有可能吗
QTreeWidgetItem *item = ui->treeWidget->topLevelItem(index);
const QIcon &icon = item->data(0, Qt::DecorationRole)._howToConvert_();
但是,我只能以QVariant的形式获取数据,并且找不到从QVariant转换为QIcon的函数。有可能吗?好的,在进一步检查后找到答案
这项工作:
QImage image = variant.value<QImage>();
反向转换(例如,从QColor
到QVariant
)是自动的
QVariant
支持的所有数据类型,包括GUI相关类型:
QColor color = palette().background().color();
QVariant variant = color;
如果您想知道:您声明为元类型并在用户角色中使用的任何自定义类型的计数都相同。
QColor color = palette().background().color();
QVariant variant = color;