从QGraphicsScene中删除多个项目

时间:2015-08-12 03:12:30

标签: c++ qt qgraphicsscene qlist

在我的Qt GUI中,我QGraphicsScene添加了QGraphicsItems。现在,为了删除这些项目,我使用GraphicsScene::selectedItems()返回屏幕上选择的项目列表。这将返回所选项的内存地址,它们的位置和标记为逗号分隔数组。

现在如何将此结果"QList<QGraphicsItem*>用作QGraphicsScene::removeItem()的参数?

更新**** 添加到场景中的项目来自从GraphicsItem派生的类。当项目背负场景时,每个类都会创建一个文本文件。因此,当删除此项目时,也应删除文本文件。如果我要使用上述方法,我就无法做到。相反,我更喜欢让QGraphicsScene :: selectedItems选择对象,然后使用类中的成员函数删除与之关联的文件。我该怎么做呢。请解释,谢谢你

1 个答案:

答案 0 :(得分:0)

foreach (QGraphicsItem * i, selectedItems()) removeItem(i);