关于在 QGraphicsView/QGraphicsScene 上缩放的一般建议
Posted
技术标签:
【中文标题】关于在 QGraphicsView/QGraphicsScene 上缩放的一般建议【英文标题】:General advice about scaling on QGraphicsView/QGraphicsScene 【发布时间】:2010-05-24 07:19:02 【问题描述】:在我的项目中,我使用的是QGraphicsView/QGraphicsScene 的东西。
在我的场景中,会有包含 2D 图形的区域。 区域数量将受到限制(比如说 20 个) 用户可以选择显示一个或多个区域。 如果用户选择显示一个区域,我将在场景中显示一个区域 如果用户选择显示 n 个区域,我将在场景中显示 n 个区域 我需要一个缩放逻辑来适应同一场景中的 n 个区域。
我怎样才能做到这一点?
【问题讨论】:
【参考方案1】:QGraphicsView::fitInView() 应该做你想做的事:
QRectF bounding;
foreach(QRectF r, selectedRegionRects)
bounding |= r;
scene->fitInView(bounding, Qt::KeepAspectRatio);
【讨论】:
【参考方案2】:我相信你应该使用ensureVisible 方法。
【讨论】:
以上是关于关于在 QGraphicsView/QGraphicsScene 上缩放的一般建议的主要内容,如果未能解决你的问题,请参考以下文章