我遇到了树视图中节点索引的差异。这棵树只有 2 个层次结构,许多根节点和每个根节点下的许多节点。当我阅读时TTreeView.Selected.Index
,我只得到根节点的索引,但是当我阅读TTreeView.Items[TTreeView.Selected.Index]
(循环迭代)时,我得到一个完全不同的树节点。
一个更具体的例子,假设我有这个数据:
- 根 1
- 项目 1.1
- 项目 1.2
- 项目 1.3
- 根 2
- 项目 2.1
- 项目 2.2
- 项目 2.3
- 根 3
- 项目 3.1
- 项目 3.2
- 项目 3.3
现在假设我选择“Root 3”并阅读TTreeView.Selected.Index
,它将返回2
。但是,当我阅读TTreeView.Items[2]
它时,它会返回“Item 1.2”,因为它实际上是列表中的第三项。我选择的“Root 3”实际上是索引号 8。
读取当前选择的根节点的索引的正确方法是什么,所以我得到8
而不是2
?