Pour les débutants :
Je cherchais à sélectionner un item précis dans un QGraphicsView, voici ma solution :
Au lieu d'utiliser QGraphicsView, j'utilise une version personnalisée pour intercepter le clic souris :
Ce code affiche les infos du QRectItem cliqué.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 class myview : public QGraphicsView { public: myview(QGraphicsScene * scene) { } protected: void mousePressEvent(QMouseEvent *event) { QGraphicsRectItem* myitem=dynamic_cast<QGraphicsRectItem*>(this->itemAt(event->pos())); if (myitem) { qDebug()<<"item clique"<<event->pos()<<this->itemAt(event->pos()); } QGraphicsView::mousePressEvent(event); } };
Pour sélectionner ensuite un élément bien précis il suffit de comparer le myitem avec le pointeur de l’élément précis.
Le truc, c'est de surcharger mousePressEvent
Si ça peut aider quelqu'un d'autre.
Partager