QFileDialog 如何同时选定多个文件夹和文件

東條・スペンサー・咲 发布于 2015/07/21 08:07
阅读 3K+
收藏 0
Qt

历史遗留问题了,算是。 这个问题始终搞不定。QFileDialog可以用于选择单一文件、多个文件、单个文件夹,却并不能同时选择多个文件夹,更不用提文件夹和文件混选了。选择使用多个文件会自动跳过文件夹不选择。

现在希望最好使用QFileDialog能够选择多个文件夹(原生风格大法好),求助一下各位有没有什么解决办法?

加载中
0
土卫十六
土卫十六
http://bbs.qter.org/forum.php?mod=viewthread&tid=3278&extra=page%3D1
東條・スペンサー・咲
東條・スペンサー・咲
同时选择文件和文件夹是没问题的,如果是只选择文件的话,打开按钮是被禁用的,原因是因为它设置了QFileDialog::Directory,然后在_q_updateOkButton()中(qfiledialog.cpp #3046)判定如果当前的Index不是文件夹的话禁用选择按钮的代码。我大概想出了解决方法,重写QFileDialog应该是可行的。
土卫十六
土卫十六
回复 @东条咲 : 其实上面写了,可以同时选择文件和文件夹的,虽然没有给出实现代码。但理论上还是可行的,因为我自己用不到,所以一直没有亲自测试。星期一我帮你试试。
土卫十六
土卫十六
回复 @东条咲 : 我只是偶然看到,然后就想起你的帖子了。改天我也试试,看有没有统一的解决方案~
東條・スペンサー・咲
東條・スペンサー・咲
但是这个实现也有个问题,就是如果选择的内容里不包括文件夹的话,Choose是没有用的。所以……
東條・スペンサー・咲
東條・スペンサー・咲
这个解决方案其实以前实验过一次,但是没成功。这回重新改写了一下,然后成功了,发现确实可以。非常感谢!
0
beyondforever68
beyondforever68

http://www.qtcentre.org/threads/4810-QFileDialog-how-to-choice-File-or-Directory-in-the-same-Dialog

http://stackoverflow.com/questions/27520304/qfiledialog-that-accepts-a-single-file-or-a-single-directory

0
東條・スペンサー・咲
東條・スペンサー・咲

引用来自“beyondforever68”的评论

http://www.qtcentre.org/threads/4810-QFileDialog-how-to-choice-File-or-Directory-in-the-same-Dialog

http://stackoverflow.com/questions/27520304/qfiledialog-that-accepts-a-single-file-or-a-single-directory

这两个答案我全都看过了,但是都有问题:第一个qtcentre.org的那个答案的问题在于:它是在最后处理提交的东西的问题。而现在的问题是连选择都选择不上。所以这个答案最后亲测失败。第二个stackoverflow的答案是我觉得可能最有用的答案,但是很显然是不行的:他首先是对按钮结果操作,与上一个问题的情况相同,也存在选择都选择不上的问题。其次,它对按钮的检测是硬编码的检测是哪个按钮。姑且不用说别的系统,只要使用了中文的系统这个代码就肯定是挂的。不过也谢谢你的答案~
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部