2015-01-08 11 views
7

ネストされたサブレベルのツリーを自分のプログラムに実装したいのですが、私はその2種類(View/Widget)のどれが自分の目標に最も適しているのか探しています。QTreeViewまたはQTreeWidget

私は、タスクが完了/欠落/失敗した日のリストを持っています。各タスクは、完了/欠落/失敗の回数と最後にその日の得点をカウントします。

私はそうのようにそれらを表示したい:

tree display

私はQTreeWidgetを使用してQtCreatorでこの例を作ったが、私は、彼らがどこかに保存されているので、要素を変更するのは難しいだろうと心配していますelse。

私の心配は合理的で、モデル/ビュー構造に進むべきか、QTreeWidgetに簡単に行くことができますか?ツリーはタスクをログに記録するため、常に変化します。要素は削除されずに追加されます。そして、日は最も低い(2日目が最初、1日目)からソートされます

答えて

4

データがデータベースモデルに格納されている場合、または単一のデータモデルをいくつかのビューに表示する場合は、さまざまな方法で、あなたは確かにQTreeViewと一緒に行くことをお勧めします。

しかしQTreeWidgetは、それがインデックスのコンテキストでモデルに対処する方法と一緒にいくつかの方法で、内部モデルのしています。一般的には、作業が簡単なものだけが必要な場合は、ウィジェットの方法を使用できます。

しかし、モデル/ビューアプローチは、より一般的で柔軟なIMOです。モデルやビューの独自のサブクラスを作成して、好きなことを行うことができます。