【问题标题】:How not to draw out of scene bounds?如何不画出场景边界?
【发布时间】:2015-02-15 15:51:21
【问题描述】:

关于下面的图片(画笔),我向您展示我认为的 QGraphicsView 和 QGraphicsScene。如您所见,蓝色圆圈没有画出场景边界。但这不是QGraphicsScene 的默认行为,我希望我的QGraphicsItem 不要画出场景边界。我怎样才能做到这一点?

PS:我是 Qt 新手。

【问题讨论】:

    标签: c++ qt qgraphicsview


    【解决方案1】:

    您应该拨打QGraphicsScene 上的setSceneRect :

    scene->setSceneRect(view->rect());
    

    它保存视图显示的场景区域。这里设置为视图的场景矩形。

    sceneRect 上的 Qt 文档明确指出:

    如果未设置,或者设置为空 QRectF,sceneRect() 将返回 自场景创建以来场景中所有项目的最大边界矩形 创建的(即,在添加或移动项目时增长的矩形 在场景中,但从不缩小)。

    【讨论】:

    • 你好。我这样做了,但是项目被绘制在这个范围之外。我怎样才能让他们不画外景边界? (被剪掉)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多