4

私はツリー構造を持っていると仮定します(ボールド体のツリーの葉、ドットで申し訳ありません):


    • A1
    • A2
  • B
    • B1
      • B11
    • B2

QAbstractItemModel に格納されます (親子関係が設定されています)。

QTableViewで木の葉だけを表示するには?

基本的なアイデアは、QSortFilterProxyModel を実装することでした。直観は、ツリーを反復処理して、アイテムがリーフの場合は有効なインデックスを返し、そうでない場合は QModelIndex() を返す方法があることを示唆しました。

// QAbstractItemModel *model;
m_leavesModel.setSourceModel(model); // QSortFilterProxyModel m_leavesModel;
m_leavesTableView->setModel(&m_leavesModel);

現時点では、ルートのすぐ下にある「第 1 レベル」のアイテム (A、B、C) のみを表示できます。

4

0 に答える 0