大理石鼠标事件在地图qml上不起作用

时间:2015-04-06 02:25:40

标签: c++ qt qml

我正在使用Marble开发地图应用程序。我使用QGraphicsProxyWidget来包装MarbleWidget并将其显示在Qml中。 但是,鼠标事件在地图上不起作用;我无法移动,平移或缩放它,但我仍然可以使用右下方屏幕中包含的缩放和平移工具。

使用时会出现相同的行为 MarbleWidget的qml示例。

任何帮助都会非常感激!提前谢谢。

1 个答案:

答案 0 :(得分:0)

我解决了。 只需在MyMapWidget中实现两个虚函数:

void MyMapWidget::mousePressEvent(QMouseEvent *)
{
    return;
}

void MyMapWidget::mouseReleaseEvent(QMouseEvent *)
{
    return;
}

它将mouseEvent转发到MarbleInputHandler并且它可以工作