QFileDialog可以选择文件或者文件夹

您所在的位置:网站首页 qfiledialog多选择文件名 QFileDialog可以选择文件或者文件夹

QFileDialog可以选择文件或者文件夹

2023-11-26 17:49| 来源: 网络整理| 查看: 265

直接上代码吧

 

class myFileSelect :public QFileDialog { Q_OBJECT public: explicit myFileSelect(QWidget *parent = 0) :QFileDialog(parent) { this->setOption(QFileDialog::DontUseNativeDialog,true);//设置不使用本机默认的 this->setWindowFlags(Qt::Dialog | Qt::WindowStaysOnTopHint); QListView *listView=this->findChild("listView");//文件对话框就是左边一个treeview右边一个listview if(listView){ listView->setSelectionMode(QAbstractItemView::ExtendedSelection); } QTreeView *treeView =this->findChild(); if(treeView){ treeView->setSelectionMode(QAbstractItemView::ExtendedSelection); } QDialogButtonBox *button =this->findChild("buttonBox"); disconnect(button,&QDialogButtonBox::accepted,this,&myFileSelect::accept);//这里accept是QFiledialog里protected,只能在类内访问 connect(button,&QDialogButtonBox::accepted,this,&myFileSelect::go); } signals: public slots: void go(){ QDialog::accept(); } };

我图方便就直接把声明和定义写一起了。

我是新手,不太懂,试了其他人的都不太行,StackOverflow那条也不行,就把他们的结合到一起,我这台电脑上是可以了,就是样式有点丑,可以自己修改样式。原来QFileDialog::getOpenFileNames按住左键会出现一个框,现在没有了,但是功能还在,就和原来一样,按住左键拖动,就能批量选择文件,只不过框在你心里。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3