我有一个简单的QTreeView,其QFileSystemModel指向根目录:
#include "mainwindow.h"
#include <QApplication>
#include <QFileSystemModel>
#include <QtGui/QApplication>
#include <QtGui>
#include <QTreeView>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QFileSystemModel *model = new QFileSystemModel;
QString dir("/");
model->setRootPath(dir);
QTreeView *tree = new QTreeView();
tree->setModel(model);
tree->setRootIndex(model->index((dir)));
tree->show();
return a.exec();
}
显示如下内容:
我上面选择的项目是/usr/lib/clang
。如何获取当前所选项目的绝对路径?
答案 0 :(得分:5)
使用view->selectionModel()->selectedIndexes()
获取所选索引,使用fileSystemModel->filePath()
获取这些索引的路径。
答案 1 :(得分:0)
on_tree_clicked(const QModelIndex &index)
{
model->filePath(index)
}