私は理解しようとしている小さな問題があります.QTreeViewを使用しているQTアプリに取り組んでおり、子を持つカテゴリがたくさんあるので、次のようになります
Parent 1
Parent 2
- Child 1
- Child 2
Parent 3
などなど、データベースにはすべての通常の詳細(名前、ID、作成日など)を含む行があり、子である行には親が指定されています(つまり、pid =親行ID)。次に、標準の QSqlQuery を使用してループします。しかし、私が直面している問題はこれです...
アイテムはツリービューに追加されQStandardItem* item = new QStandardItem(icon, name);
、行を追加しますが、私の子供は親のmodel->appendRow(item);
を呼び出す必要がありますparentitem->appendRow(item);
。QStandardItem* item
しかし、すべてを保存せずに、どうすればそれが何であるかを知ることができますitem
か?
話の教訓は、パフォーマンスを破壊しない次のいずれかを行う方法があるかどうかです。
QStandardItem* item
子ループで親を参照できる配列に格納しますか?QStandardItem* item
子を追加するときに参照できるID または何かを割り当てます。- 子配列要素が子として追加される配列から TreeView モデルを生成しますか?
- 他に思いつかなかったことが…
データベースからの子を持つ QTreeView の良い例を見つけることができないようです。