我有一个继承自的类QGraphicItems
和另一个继承自的类QGraphicsScene
。我创建了一个自定义项目并将它们放置在我的自定义场景中。这是我的事件处理函数:
void Panel::mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent)
{
if (mouseEvent->button() != Qt::LeftButton)
return;
//my code
QGraphicsScene::mousePressEvent(mouseEvent);
}
void Panel::mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent)
{
//my code
QGraphicsScene::mouseMoveEvent(mouseEvent);
}
void Panel::mouseReleaseEvent(QGraphicsSceneMouseEvent *mouseEvent)
{
//my code
QGraphicsScene::mouseReleaseEvent(mouseEvent);
}
但是,这些事件似乎没有被调用。我的代码基于DiagramScene
Qt 中的示例,主要区别在于我的项目继承自QGraphicsItem
而不是QGraphicsPolygonItem
.
我怎样才能正确处理这些事件?