我想构建一棵树,其中一个元素可以引用另一个元素。我要构建的树是这样的:
A
|--- B
|--- C
| |--- D
| |--- E
|
|--- F
|--- P //this is a "pointer" to C
|--- D //first child of C
|--- E //second child of C
问题是在我的QAbstractItemModel
. 复制元素是不可能的,它可能是一个巨大的子树(我也希望它们在改变时保持同步)。
一个项目在模型中可以有多个父级(真正的父级,以及当前指向它的项目),我如何确定当前正确的父级?目前我只有一个Item*
存储在 中QModelIndex
,但是当Item*
当前D
我无法确定索引是指D
低于C
还是低于的元素P
。
我希望有一些方法可以解决 Qt 项目模型中的一对 N 父子映射。我希望有一些方法可以做到这一点,否则我将需要实现我自己非常想避免的小部件。