使 QGraphicsItemGroup 的 children 不可选择
Make children of QGraphicsItemGroup unselectable
在我的应用程序中,我使用了图形视图框架,并且创建了很多 QGraphicsItemGroup。例如,一组表示带有一些方块的文本框架以调整框架的大小,另一组是一组表示笔触的点。我正在实施一种类似于您可以在 Adobe Photoshop 或 Indesign 中找到的选择工具。我实现如下:
- 在我的场景中,我使用函数 itemAt(pos, transform),其中 pos 是我鼠标的当前位置。
- 另外,我在所有组中都调用了 setFiltersChildEvents(True)
然而,itemAt 返回的项目有时只是组本身的一个 child。有没有办法让函数 itemAt() 返回项目组?或者以另一种方式,使那些 children 无法选择。
如果您要获取商品的分组
以下方法适用于 QGraphicsItem
,其中 returns QGraphicsItemGroup
。使用此组对象并设置所需的。
PySide6.QtWidgets.QGraphicsItem.group()
在我的应用程序中,我使用了图形视图框架,并且创建了很多 QGraphicsItemGroup。例如,一组表示带有一些方块的文本框架以调整框架的大小,另一组是一组表示笔触的点。我正在实施一种类似于您可以在 Adobe Photoshop 或 Indesign 中找到的选择工具。我实现如下:
- 在我的场景中,我使用函数 itemAt(pos, transform),其中 pos 是我鼠标的当前位置。
- 另外,我在所有组中都调用了 setFiltersChildEvents(True)
然而,itemAt 返回的项目有时只是组本身的一个 child。有没有办法让函数 itemAt() 返回项目组?或者以另一种方式,使那些 children 无法选择。
如果您要获取商品的分组
以下方法适用于 QGraphicsItem
,其中 returns QGraphicsItemGroup
。使用此组对象并设置所需的。
PySide6.QtWidgets.QGraphicsItem.group()