0

我正在开发一个软件来显示模拟结果。我正在使用瓦片,由于地图有几百万个瓦片,我决定不使用 QGraphics 功能“绘制整个场景,只显示可见部分”,因为我读到它适用于数千个瓦片,而不是数以百万计的瓷砖。

因此,我只显示地图的可见部分(几百个图块)。它工作得很好。我在 QGraphicsScene 和 QGraphicsView 中添加 QGraphicsPixmapItem (=tiles)。

我的问题是:如何滚动地图?我想移动包含地图的对象(=场景),以便所有图块同时移动。我怎样才能做到这一点 ?

4

1 回答 1

0

好的,我终于找到了一些有用的东西:QGraphicsItemGroup
我所做的是将地图的所有图块显示为QGraphicsItemGroup,当我想滚动地图时,只需调用 moveBy().QGraphicsItemGroup

所以,我有:
QGraphicsPixmapItem(=瓷砖)
QGraphicsItemGroup (=地图的容器,当我们滚动时移动)
QGraphicsScene (=场景)
QGraphicsView (=视图)

希望它有帮助;p

于 2012-11-17T11:13:39.460 回答