2011-02-10 3 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) '*'です。正しいですか? –

+0

はい、正しいです。 – Pieter

答えて

3

答えはです。です。
Qtでは、すべてのモデル/ビューフレームワークの標準機能である多くのビューに1つのモデル(この場合はQGraphicsScene)を表示できるためです。

ドキュメンテーションQGrahpicsView::setScene()には、シーンの所有権に関係する情報はありませんが、状況は他のビューと同じです。 void QWebView::setPage (QWebPage * page)

提供されたページの親QObjectは、オブジェクトの所有者のままです。 現在のドキュメントがWebビューの の子である場合、そのドキュメントは削除されます。

関連する問題