【发布时间】:2015-09-26 20:35:24
【问题描述】:
我正在使用 QGraphicsScene 并通过隐式创建的 QGraphicsProxyWidget 对象向其添加常规小部件(QLineEdit、QComboBox 等):
m_pLineEdit = new QLineEdit("", 0);
m_pProxy = m_pGraphicsScene->addWidget(m_pLineEdit);
我目前正在寻找一种方法,以便以后再次从场景中检索这些小部件进行处理,但找不到。
我已经尝试了以下方法:
- 由于我无法将图形场景作为父级传递给小部件构造函数,因此无法通过
m_pGraphicsScene->findChildren(QLineEdit*)检索小部件,因为没有直接关系。 - 图形场景确实有一个
QGraphicsSceneBspTreeIndex子级,但这不是官方 Qt API 的一部分,因此不能依靠它。
底线:如何从 Qt 图形场景中获取所有 QGraphicsProxyWidget 对象?这可以在 Qt 标准中完成,还是我必须继承 QGraphicsScene 并尝试自己管理小部件?
【问题讨论】:
标签: c++ qt5 qgraphicsscene qgraphicswidget