网站策划网站建设企业,电子商务网站规划的原则是什么,龙岩网络营销平台,深圳电商网站建设公司QFileDialog提供了一个函数---setproxyModel。。就是用这个来玩了。就是override filterAcceptsRow的虚函数#xff0c;里面定制自己的过滤需求。返回bool 下面就是判断是否是目录#xff0c;只显示目录文件夹。1 #ifndef PROXY_MODEL_H2 #define PROXY_MODEL_H34 #include…QFileDialog提供了一个函数---setproxyModel。。就是用这个来玩了。就是override filterAcceptsRow的虚函数里面定制自己的过滤需求。返回bool 下面就是判断是否是目录只显示目录文件夹。1 #ifndef PROXY_MODEL_H2 #define PROXY_MODEL_H34 #include 567 class FileFilterProxyModel : publicQSortFilterProxyModel8 {9 public:10 FileFilterProxyModel(QObject*parent) :QSortFilterProxyModel(parent){}1112 protected:13 virtual bool filterAcceptsRow(int source_row, const QModelIndex source_parent) const;14 };151617 #endif#include proxymodel.h#include #include bool FileFilterProxyModel::filterAcceptsRow(int sourceRow, const QModelIndex sourceParent) const{QModelIndex index0 sourceModel()-index(sourceRow, 0, sourceParent);QFileSystemModel* fileModel qobject_cast(sourceModel());if (fileModel ! NULL fileModel-isDir(index0)){qDebug() fileModel-fileName(index0);return true;}elsereturn false;// uncomment to execute default implementation//return QSortFilterProxyModel::filterAcceptsRow(sourceRow, sourceParent);}1 QFileDialog dialog;2 FileFilterProxyModel* proxyModel newFileFilterProxyModel();dialog.setOption(QFileDialog::DontUseNativeDialog);3 dialog.setProxyModel(proxyModel);4 dialog.exec();references:http://stackoverflow.com/questions/4893122/filtering-in-qfiledialoghttp://stackoverflow.com/questions/2101100/qfiledialog-filtering-folders