【问题标题】:General advice about scaling on QGraphicsView/QGraphicsScene关于在 QGraphicsView/QGraphicsScene 上缩放的一般建议
【发布时间】:2010-05-24 07:19:02
【问题描述】:

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

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

我怎样才能做到这一点?

【问题讨论】:

    标签: c++ qt implementation scaling qgraphicsview


    【解决方案1】:

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

    QRectF bounding;
    foreach(QRectF r, selectedRegionRects) {
        bounding |= r;
    }
    scene->fitInView(bounding, Qt::KeepAspectRatio);
    

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2012-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-02-16
        • 1970-01-01
        • 2013-06-17
        • 1970-01-01
        • 2020-07-01
        相关资源
        最近更新 更多