У меня есть класс, полученный из QGraphicsView
, который содержит элементы QGraphicsItem
. Я хочу, чтобы эти элементы меняли цвет всякий раз, когда курсор мыши нависал над ними, поэтому я реализовал hoverEnterEvent
(и hoverLeaveEvent
):
void MyGraphicsItem::hoverEnterEvent(QGraphicsSceneHoverEvent* event)
{
update (boundingRect());
}
Однако этот код обработчика событий никогда не выполняется. Я явно включил отслеживание мыши:
MyGraphicsView::MyGraphicsView(MainView *parent) :
QGraphicsView(parent)
{
setMouseTracking(true);
viewport()->setMouseTracking(true);
...
}
Тем не менее, не повезло. Что я делаю неправильно?