我有我创建了一个自定义类,说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)。价值();

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top