【问题标题】:How to resize a QGraphicsView after QGraphicsView::Scale如何在 QGraphicsView::Scale 之后调整 QGraphicsView 的大小
【发布时间】:2012-01-16 13:35:59
【问题描述】:

在调用 scale() 后是否有不可怕的方法来调整 QGraphicsView 的大小。

我的 QGraphicsView 嵌入在 QScrollArea 中。当我缩放时,我希望视图变大。

谢谢

【问题讨论】:

    标签: qt resize qgraphicsview


    【解决方案1】:

    QGraphicsView 本身继承自 QAbstractScrollArea。将其嵌入另一个 QScrollArea 会很奇怪,并且很可能是您的问题的根源。默认情况下,当您缩放比显示它的QGraphicsView 更大的QGraphicsScene 时,它将显示必要的滚动条。

    【讨论】:

    • 好的,但是对于一个小的 QGraphicsView,当我缩放时,我希望视图增长。现在只出现滚动条,视图保持其初始大小
    • 哦,好的。嗯......你必须继承QGraphicsView 并重新实现一些功能。我的猜测是sizeHint,也可能是resizeEventviewportEvent。 sizeHint 将基于场景的 boundingRect。然后,嵌入它的布局可以让视图根据需要拥有更多空间。
    • 顺便说一句,视图是否与窗口上的其他小部件竞争空间?即使渲染的场景较小,您是否有理由不希望它尽可能大?
    • 它在 QFrame 的 Gridlayout 中。我没有看到任何可以阻止调整大小的东西
    • 我试过 QGraphicsViewresize(scene->itemsBoundingRect() 没有任何反应:/
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    • 2019-05-15
    • 1970-01-01
    • 2019-05-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多