gpt4 book ai didi

qt4 - 修复了 QGraphicsView 中的变换叠加

转载 作者:行者123 更新时间:2023-12-04 23:30:06 25 4
gpt4 key购买 nike

在我正在开发的基于 Qt 的应用程序中,我使用 QGraphicsView 在 2D 网格中显示传感器数据。另一方面,我想展示一个图例/调色板,将网格中的颜色与值联系起来。

用户可以缩放和平移传感器数据 View ,但可以理解的是,调色板在 View 中应该是静止的。因此,在传感器 View 场景中放置调色板/图例需要一些额外的注意:应用反向用户转换。

但是,我宁愿将调色板/图例实现为一种(非交互式)叠加层,它具有自己的转换功能。这有可能吗?

最佳答案

我认为你应该在 QGraphics 上下文之外实现你的图例/调色板覆盖,如果你移动这个项目的 (setPosition...) 来反转用户转换你的项目将在你平移/缩放时在图形树中重新索引...

做一个覆盖小部件绝对是可行的,但在这种情况下,因为它是你图形上下文的一部分,我建议实现你自己的 QGraphicsView (wicth 是一个widget) 重新实现paintEvent在默认小部件空间中绘制调色板/图例(无转换)。另外,如果您的调色板/图例是静态的,您可以在像素图中渲染一次,然后在 QGraphicsView 上随时重新绘制此缓冲区像素图。需要更新(当然,重新调整大小将需要更新缓冲区......)。

如果你这样做,不用担心非交互部分,你甚至不必转发事件。

关于qt4 - 修复了 QGraphicsView 中的变换叠加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6375658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com