关于QFileSystemModel获取文件路径疑问
dirInfo继承QDialog类
本段程序想实现在QTableView中双击文件名字,获取文件路径的功能,但是出错了:
bool dirInfo::eventFilter(QObject *object, QEvent *event)
{
if(event->type() == QEvent::MouseButtonDblClick)
{
QModelIndex currentIndex = ui->dirTableView->currentIndex();//dirTableView是QTableView类
if(!QFileSystemModel().isDir(currentIndex))
{
qDebug() << QFileSystemModel().filePath(currentIndex);//出错的地方
return true;
}
}
return QObject::eventFilter(object, event);
}
代码如上,错误信息如下:ASSERT: "index.model() == q" in file dialogs/qfilesystemmodel.cpp, line 1301
Invalid parameter passed to C runtime function.
Invalid parameter passed to C runtime function.
如果改为qDebug() << QFileSystemModel().fileName(currentIndex);则没问题,但我想获取用户点击视图框架下的文件名所在的路径而不是名字,但是老是报错。求解。。。