Qt / c ++ QGraphicsItem绑定到自定义类

时间:2013-06-10 11:42:12

标签: c++ qt selecteditem qgraphicsitem qgraphicsscene

我一直在用C ++ / Qt开发游戏。我的游戏包含一些自定义类,其中包含指向继承自QGraphicsItem的自定义类图片的指针。 Picture类还包含一个指向自定义类实例的指针。

现在,当我将带有图片类的项目添加到QGraphicsScene时,我想从该场景中获取所选项目,并阅读指向其自定义类的指针,但我真的不知道如何做到这一点。我尝试使用QGraphicsScene-> selectedItems()但这只返回一个GraphicsItems的QList:S

有人可以帮我这个吗? 提前致谢

1 个答案:

答案 0 :(得分:2)

当您获得场景中所选项目的列表时,可以使用dynamic_castQGraphicsItem强制转换为继承自QGraphicsItem的自定义类。

示例:

QList<QGraphicsItem*> list = scene->selectedItems();
for(int i = 0; i < list.length(); i++)
{        
    CustomItem *item = dynamic_cast<CustomItem*>(list[i]);
}