找回密码
 立即注册
收起左侧

QFileDialog打开ftp文件夹

0
回复
7516
查看
[复制链接]
累计签到:12 天
连续签到:1 天
来源: 2017-7-21 01:35:47 显示全部楼层 |阅读模式
10Qter豆
本帖最后由 Celinaaaa 于 2017-7-21 15:28 编辑

根本问题:

我需要做的内容:连接FTP服务器,出现文件选择框,用户选择需要的文件,我获取文件名。解决的思路是这样:用QFileDialog的getOpenFileUrl()方法


QUrl url = QUrl("ftp://10.0.0.3:21");   

QUrl file = QFileDialog::getOpenFileUrl(this,tr("Select File"),url,"img(*.tiff *.tif)");   

qDebug()<<file.fileName();
但文件对话框出现后依然是本地目录。求解决方案!(这是最根本的问题,以下是其它一些相关)
相关内容一:
在QT文档里,我研究了一下QFileDialog的setDirectoryUrl()方法(http://doc.qt.io/qt-5/qfiledialog.html#setDirectoryUrl),里面有这样的描述:

On Windows, it is possible to pass URLs representing one of the virtual folders, such as "Computer" or "Network". This is done by passing a QUrl using the scheme clsid followed by the CLSID value with the curly braces removed. For example the URL clsid:374DE290-123F-4565-9164-39C4925E467B denotes the download location. For a complete list of possible values, see the MSDN documentation on KNOWNFOLDERID.


如果可以,请一个大佬给我翻译一下,它的意思是说让我用CLSID来解决吗?网上资料太少了,CLSID又要怎么设置才能连接上FTP服务器。
相关内容二:
我有研究过用QFTP连接后获取所有文件名,也有研究过QTreeWidget如何遍历显示文件,但要怎么才能把它们联系到一起,能在QTreeWidget里方便地显示各个层级,方便用户挑选。

谢谢帮助我的人!








回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了