c++ - 如何跟踪添加到我的图形场景中的 QAbstractGraphicsShapeItem 的索引
问题描述
我使用 QAbstractGraphicsShapeItem 在 QGraphicssene 中添加了几个矩形。如何跟踪矩形 ID/索引,以便在用户选择并按下删除按钮时删除正确的矩形。除了从图形场景中删除它之外,我还需要删除 QList 中的特定矩形数据。下面是我将矩形添加到图形场景中的代码。
QAbstractGraphicsShapeItem *i = m_pCamImageScene->addRect(General::instance()->maskingRect);
i->setFlag(QGraphicsItem::ItemIsSelectable);
i->setBrush(brush);
i->setPen(pen);
我曾尝试创建一个 unordered_map 来存储 QAbstractGraphicsShapeItem 及其索引,但出现错误,指出 unordered_map 在插入期间没有重载函数。
std::unordered_map mGraphicsShapeItems;
mGraphicsShapeItems.insert(i, 1);
我希望获得矩形的索引并能够从图形场景以及我的 QList 中删除它
解决方案
推荐阅读
- android - ?listPreferredItemHeight 导致膨胀异常
- javascript - TypeError: Cannot read property 'target' of null
- powerbi - Segments every month
- javascript - convert isoDatetime to dateTime format
- c# - Is it possible to compile C++ that's using a .NET DLL with GCC?
- javascript - How to configure vscode to automatically add new lines between functions
- php - Enable TALK_DETECT for channel originated via ARI
- sharepoint - Adding a sub list within a list item within SharePoint 2019
- rust - How to make a struct as a owner of an string at the same time storing a reference of this string?
- angularjs - using storybook with for hybrid angular app