gpt4 book ai didi

c++ - 我可以按任意顺序在 QGraphicsScene 中堆叠对象吗?

转载 作者:行者123 更新时间:2023-11-28 07:08:08 25 4
gpt4 key购买 nike

所以这是我的问题:

我有一个场景,里面有物体 A 和 B。

我将对象 C 添加为 A 的 child ,将 D 添加为 B 的 child 。

我希望看到两个 child 都在 parent 双方之上,即我希望 C 在 A 和 B 之前,即使 A 在 B 之后。

有没有可能不失去继承权?

最佳答案

这可能会给您带来其他问题,但您可以考虑不使用 GraphicsItem 父级系统。

还有两个选择:-

1) 自己处理父级,这意味着每个项目的 Qt 父级是 GraphicsScene,允许使用 setZValue。然后,您将必须处理相对于父项的项的转换和翻译。

2) 使用 QGraphicsItemGroup,它可能允许按预期对组的项目调用 setZValue,但应该将移动项目作为一个组来处理,而不是您必须手动转换和转换子项目。我自己没有尝试过这个,但应该足够简单来测试这个。

过去,我使用的是第一种方法,它确实有效,但需要编写 Qt 通常通过父子系统提供的大量代码。

关于c++ - 我可以按任意顺序在 QGraphicsScene 中堆叠对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21452548/

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