如何获取QTreeView的大小/深度/分支



我找不到任何方法来获取QTreeView的大小,深度和分支数量。
我指的不是其图形表示的大小,而是存储在树中的数据的大小。

您应该使用数据模型,而不是视图。

要获取根分支的数量,您应该使用 rowColumn( QModelIndex() ) 方法。

要获得任何索引(项目)的深度,您应该选择父索引,直到它保持有效。伪代码:

QModelIndex index = /*your item*/;
int depth = 0;
while ( index.parent().isValid() )
{
  index = index.parent();
  depth++;
}
qDebug() << depth;

不清楚,你说的物品"大小"是什么意思?是文本数据的长度吗?您应该了解,这取决于数据模型的实现。因为每个项目可能有很多角色。

最新更新