Qt的图形 View 框架非常强大,但是我还没有找到支持自定义图层的方法。 在Qt中,有一个QGraphicsScene::ItemLayer,但是QGraphicsScene渲染的所有项目都在这一层中。我想管理多个图层的项目,就像 Illustrator 和 CorelDraw 一样。 只有当前图层中的所有项目才会接收到事件,被选中或获得关键焦点等。其他图层(非当前图层)不会接收所有场景事件。 使用图层的最大原因是我可以更清楚地对大量项目进行分类。并且不需要将事件传输到所有图层的项目,我认为图形框架会更有效。 最后一个问题,QGraphicsView是否支持同时渲染服务器堆叠图形场景?如果支持的话,我想“自定义层”可以通过这种方式解决。 非常感谢!
最佳答案
我可以看到两种实现项目分层的方法:
- 您可以使用
QGraphicsItemGroup
对项目进行分组。 - 或者将相同“层”的项目放入 parent QGraphicsItem 不绘制任何东西。
关于qt - 如何让Qt Graphics View Framework支持自定义图层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3031013/