Как получить детали об использовании выбранных пунктов QTreeView?

Я использую QTreeView с QDirModel как это:

QDirModel * model = new QDirModel;
ui->treeView->setModel(model);
ui->treeView->setSelectionMode(QTreeView::ExtendedSelection);
ui->treeView->setSelectionBehavior(QTreeView::SelectRows);

Это хорошо работает, однако, я не уверен, как получить детали о файлах, которые я выбираю. У меня есть это до сих пор:

QModelIndexList list = ui->treeView->selectionModel()->selectedIndexes();

Но не уверенный, что сделать теперь, я хотел бы получить имя каждого файла и полный путь. Пример был бы действительно ярким.Спасибо.

8
задан Keiji 28 December 2009 в 13:32
поделиться

1 ответ

вы можете использовать fileInfo метод QDirModel для получения информации о файле для данного объекта индекса модели, smth like this:

QModelIndexList list = ui->treeView->selectionModel()->selectedIndexes();
QDirModel* model = (QDirModel*)ui->treeView->model();
int row = -1;
foreach (QModelIndex index, list)
{
    if (index.row()!=row && index.column()==0)
    {
        QFileInfo fileInfo = model->fileInfo(index);
        qDebug() << fileInfo.fileName() << '\n';
        row = index.row();
    }
}

надеемся это поможет, учитывая

8
ответ дан 5 December 2019 в 20:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: