Qt:给定QObject上设置的动态属性列表?

时间:2014-04-16 13:49:25

标签: c++ qt reflection qt5

使用QMetaObject我可以使用Q_PROPERTY宏浏览编译时定义的所有属性...

现在,我可以使用setProperty() ...

浏览在运行时添加的所有动态属性

有可能吗?

1 个答案:

答案 0 :(得分:7)

您可以使用QObject::dynamicPropertyNames()获取所有动态属性的列表。例如:

QList<QByteArray> dynamicProperties = object->dynamicPropertyNames();

要获取属性值,请使用相同的QObject::property(const char * name )函数:

QVariant val = object->property(name );