3

QTreeView のブランチのサイズ、深さ、および数を取得する方法が見つかりません。
グラフィック表現のサイズではなく、ツリーに格納されたデータのサイズを意味します。

4

1 に答える 1

6

ビューではなく、データ モデルで作業する必要があります。

ルート ブランチの数を取得するには、rowColumn( QModelIndex() ) メソッドを使用する必要があります。

任意のインデックス (アイテム) の深さを取得するには、親インデックスが有効になるまで、親インデックスを取得する必要があります。擬似コード:

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

商品の「サイズ」とはどういう意味ですか?テキストデータの長さですか?データモデルの実装に依存することを理解する必要があります。各アイテムには多くの役割がある場合があるためです。

于 2013-10-03T12:26:15.297 に答える