PyQt5文件对话框:显示网络文件夹

2024-10-02 22:37:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我的系统如下:Python3.6.0和PyQt5.8.1安装在Ubuntu16.10的anaconda环境中。在

我想用PyQt5文件对话框显示/选择网络文件夹(通过samba连接),但无法这样做。 在PyQt4(另一个环境)中,它起作用。在

相关代码: 从PyQt5导入QtWidgets 文件对话框=QtWidgets.QFileDialog() 工作目录=str(fileDialog.getExistingDirectory(caption=“设置工作目录”,Directory=defaultWorkDirectory) fileDialog.delete稍后()

PyQT5文档只导致C++,其中有关于网络/本地文件的:“Note:非本地QFielDeLax只支持本地文件。”“如果可能的话,这个静态函数将使用本机文件对话框而不是QFielDeLax。在不支持选择远程文件的平台上,Qt只允许选择本地文件。” 我想,ubuntu支持这个(就像PyQt4一样)。在

有办法吗?还是我必须和PyQt4和解?在

谢谢, 托普雷克


Tags: 文件代码目录文件夹环境系统anacondapyqt5
1条回答
网友
1楼 · 发布于 2024-10-02 22:37:03

这是因为gtk3文件对话框默认隐藏非本地文件。(这必须在Qt gtk3平台实现中显式启用,bugreport

Qt4不支持gtk3,因此您会得到一个gtk2文件对话框,但它不支持此功能。在

我没有找到让Qt5使用gtk2对话框的方法,而且正如您发现的那样,非本机对话框也不支持网络位置。在

作为解决方法,您可以导航到/run/user/(your username)/gvfs/*中已安装的位置。
尽管这看起来很难看,但我建议使用这个,而不是回到PyQt4。在

相关问题 更多 >