[QTreeWidget] Attacher un objet aux QTreeWidgetItem
Slaut à tous,
Je cherche à attacher un de mes objets aux QTreeWidgetItem de mon abre.
Je n'ai pas de problème pour créer mon arbre
Code:
1 2 3
| QTreeWidgetItem * deviceItem = new QTreeWidgetItem(ui.myTreeView);
deviceItem->setIcon(0, QIcon(QPixmap(":/QTClient/Resources/1.bmp"))) ;
deviceItem->setText(0, QString("Salut") ); |
Une fois que c'est fait j'esssai d'attacher une référence vers mon objet à l'item.
Code:
deviceItem->setData(0,Qt::UserRole,refMonObjet);
Mais en faisant ça, lorsque ej récupère mon item (après un clic sur l'arbre par exemple
Code:
QTreeWidgetItem * item = ui.deviceTreeView->itemAt(iPosition) ;
le champ data est à NULL :(, j'ai essaaer de faire la même chose avec
Code:
deviceItem->setData(0,Qt::UserRole,QString("toto");
Et la ça fonctionne. Après quelques recherche il me semble qu'il faudrait utiliser Q_DECLARE_METATYPE ou un truc du genre mais ça n'a mené à rien jusqu'ici.
Quelqu'un sait comment "liéer" un objet d'une classe (en dehors des classes de base) à un QTreeWidgetItem