在Qt的组合框中添加QObject
我创建了一个自定义类,比如MyClass。现在,如何在下面的组合框中添加对MyClass引用的引用作为第二个参数: 此->用户界面->组合框->添加项(“第1项”) 目的是在触发item changed时,我希望获得MyClass的特定类实例并相应地进行处理。首先需要使用,以便该类型可以在在Qt的组合框中添加QObject,qt,qcombobox,qobject,Qt,Qcombobox,Qobject,我创建了一个自定义类,比如MyClass。现在,如何在下面的组合框中添加对MyClass引用的引用作为第二个参数: 此->用户界面->组合框->添加项(“第1项”) 目的是在触发item changed时,我希望获得MyClass的特定类实例并相应地进行处理。首先需要使用,以便该类型可以在QVariant中使用。然后您可以像这样添加项目: this->ui->comboBox->addItem("item-1", QVariant::fromValue(myClass));
QVariant
中使用。然后您可以像这样添加项目:
this->ui->comboBox->addItem("item-1", QVariant::fromValue(myClass));
把它拿回来:
this->ui->combobox->itemData(x).value<MyClass*>();
this->ui->combobox->itemData(x.value();
上面的答案语法有点不正确
在MyClass头文件中使用Q_DECLARE_元类型(MyClass*),以便该类型可以在QVariant中使用
添加如下项:
this->ui->comboBox->addItem("item-1", QVariant::fromValue(myClass));
这个->用户界面->组合框->添加项(“项-1”,QVariant::fromValue(myClass))
把它拿回来:
这个->用户界面->组合框->项目数据(x).value()