解释QStandardItem和QStandardItemModel的父/子行/列关系

Explain the parent/child row/column relationship for QStandardItem and QStandardItemModel

本文关键字:子行 关系 的父 QStandardItem QStandardItemModel 解释      更新时间:2023-10-16

我正在尝试使用QStandardItemQStandardItemModel来驱动Qt中的TreeView

在Qt中控制TreeViewTableView&ListView包括行和列的概念,也包括父/子关系。

我发现这些文档非常令人困惑,因为它们似乎是相互依赖的(例如,将一个孩子添加到QStandardItem,使用appendRow()),但我没有找到专门解释具体方式的地方。

如果非要我猜测的话,我会说:"行相当于子项。列只有在项本身中才有意义"。这是正确的吗?

Qt项目模型是递归的:每个项目都是一个项目表。说行等价于子级是不正确的:每个索引都可以有一个子级,无论其行列是什么。

当然,并不是所有视图都能处理所有模型。具体来说,没有Qt的内置视图可以处理0以外的列中的子级。但你当然可以实现这样的观点!