【问题标题】:Resize QGraphicsScene with all QGraphicsItems in it使用其中的所有 QGraphicsItem 调整 QGraphicsScene 的大小
【发布时间】:2019-05-08 01:49:02
【问题描述】:

我已经用几个 QGraphicsItems 覆盖了 QGraphicsScene。我计划通过鼠标移动使这个场景动态调整大小。当 qgraphicsscene 大小发生变化时,项目的大小和位置也应相应更改,以便映射到场景的项目的相对位置始终保持不变。我该如何管理?

下图解释了我的目标:红色区域代表 QGraphicsScene,形状代表其中的项目

调整大小的 qgraphicsScene 和其中的项目

【问题讨论】:

    标签: c++ qt qt5 qgraphicsscene qgraphicsitem


    【解决方案1】:

    如果您只想实现“缩放”功能,可以致电QGraphicsView::Scale。如果您想将此绑定到鼠标事件,则需要创建自己的继承视图并在事件处理程序中实现该功能。

    【讨论】:

    • 非常感谢。正如您所说,使用 myview->scale((qreal)new_width/ (qreal)old_width, (qreal)new_height / (qreal)old_height);我能够缩放整个内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-01
    • 2011-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多