0

我有两个 QGraphicView 对象(基于相同的派生类)。它们包含不同的场景,但一些(有时很多)项目是相同的。这些项目有共同的坐标。我或者在同一框架内显示一个或另一个。我这样做没有任何问题。

在这两个图形视图中,我都添加了放大和缩小以及移动视口的可能性。我添加了一个按钮来选择要显示的显示视图。我遇到的问题是到目前为止我一直无法确保常见的项目(同样,具有相同的坐标)保持在屏幕上的同一个位置。

您对如何同步这两个视图有什么建议吗?

我尝试使用变换矩阵来解决这个问题,并且缩放现在可以工作,但我仍然有一个我似乎无法摆脱的翻译问题!

4

1 回答 1

2

翻译问题可能是更改转换后 2 个视图未居中于同一点。默认情况下,锚定模式是将场景中心定位到变换后的视图中心。将transformationAnchor设置为NoAnchor可能会有所帮助。

您还需要确保 2 个场景具有相同的 sceneRect。

于 2010-12-21T18:27:48.097 回答