1

在我的项目中,我正在使用QGraphicsView / QGraphicsScene的东西。

在我的场景中,会有包含 2D 图形的区域。区域数量将受到限制(假设为 20)
用户可以选择显示一个或多个区域。
如果用户选择显示一个区域,我将在场景中显示一个区域
如果用户选择显示 n 个区域,我将在场景中显示 n 个区域,
我需要一个缩放逻辑来适应同一场景中的 n 个区域。

我怎样才能做到这一点?

4

2 回答 2

1

QGraphicsView::fitInView()应该做你想做的事:

QRectF bounding;
foreach(QRectF r, selectedRegionRects) {
    bounding |= r;
}
scene->fitInView(bounding, Qt::KeepAspectRatio);
于 2010-05-25T21:59:54.767 回答
0

我相信你应该使用ensureVisible方法。

于 2010-05-24T08:55:33.473 回答