题
我有我创建了一个自定义类,说MyClass的。现在如何添加到MyClass的的参考如在下面的组合框第二参数的参考:
这 - > UI-> comboBox->的addItem( “项目-1”);
目的是当甚至改变项目被炒到,我要得到相应的MyClass的和过程的特定类的实例。
解决方案
首先,需要使用 Q_DECLARE_METATYPE(MyClass*)
时,使得类型可以是在QVariant
使用。然后,您可以添加的项目是这样的:
this->ui->comboBox->addItem("item-1", QVariant::fromValue(myClass));
和它找回来:
this->ui->combobox->itemData(x).value<MyClass*>();
其他提示
上面的回答语法稍有不正确,
使用Q_DECLARE_METATYPE(MyClass的*),在MyClass的头文件,使得该类型可以在的QVariant使用。
添加的项目如下:
这 - > UI-> comboBox->的addItem( “项目-1”,的QVariant :: fromValue(MyClass的));
和拿回来: 这 - > UI-> combobox->的ItemData(X)。价值();
不隶属于 StackOverflow