質問

私は、私が作成したカスタムクラスを持って、MyClassのは言います。今すぐ下のコンボボックスで2番目のパラメータとしては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タイプQVariantに使用することができるようにMyClassのヘッダファイル内の(MyClassの*)。

このように項目を追加します:

> UI-> comboBox->のaddItem( "アイテム1"、QVariant ::場合、fromValue(MYCLASS));

そして、それを取り戻します。 this-> UI-> combobox-> ITEMDATA(X).VALUE();

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top