有無論如何通過元類型id創建一個QVariant?從metatype id創建一個QVariant
例如:
int id = qRegisterMetaType<MyStruct>();
QVariant myVariant = QVariant::fromMetaType(id);
所以myVariant現在是含有 「MYSTRUCT」 的默認構造的值的QVariant。
我還沒有找到與QVariant API做這件事,我錯過了什麼,或者有什麼竅門?
感謝
有無論如何通過元類型id創建一個QVariant?從metatype id創建一個QVariant
例如:
int id = qRegisterMetaType<MyStruct>();
QVariant myVariant = QVariant::fromMetaType(id);
所以myVariant現在是含有 「MYSTRUCT」 的默認構造的值的QVariant。
我還沒有找到與QVariant API做這件事,我錯過了什麼,或者有什麼竅門?
感謝
之一QVariant
constructors做的:
QVariant::QVariant(int typeId, const void *copy)
注意copy
可以是nullptr
。所以,你的代碼是:
auto id = qRegisterMetaType<MyStruct>();
QVariant myVariant{id, nullptr};
當然,如果你有該類型本身可用,也沒有必要使用元類型的ID,你應該使用fromValue
。
謝謝,我一直在尋找它。我有可用的元類型id,但不是這段代碼中的類型本身。 – Aurelien