2011-02-10 80 views
4

我想知道......如果我分配一个图形场景QGraphicsView是否拥有其相关图形场景的所有权?

QGraphicsScene* scene = new QGraphicsScene(); 

和准其与图形视图

this->ui->graphicsView->setScene(scene); 

做图形查看拍摄的场景的所有权?换句话说,图形视图是否在其析构函数中删除了场景,还是应该自己删除场景?

+0

`this-> ui-> graphicsView`的类型是[`QGraphicsView`](http://doc.qt.nokia.com/latest/qgraphicsview.html)`*`,正确吗? – 2011-02-10 10:18:15

回答

3

答案是no
这是因为Qt可以在许多视图中显示一个模型(在这种情况下为QGraphicsScene),这是每个模型/视图框架的标准功能。

QGrahpicsView::setScene()的文档缺乏关于场景所有权会发生什么情况的信息,但情况与其他观点相同;例如来自文档的void QWebView::setPage (QWebPage * page)

提供的页面的父QObject仍然是对象的所有者。 如果当前文档是 的web视图的子项,它将被删除。

相关问题