我的系统如下: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和解?在
谢谢, 托普雷克
这是因为gtk3文件对话框默认隐藏非本地文件。(这必须在Qt gtk3平台实现中显式启用,bugreport)
Qt4不支持gtk3,因此您会得到一个gtk2文件对话框,但它不支持此功能。在
我没有找到让Qt5使用gtk2对话框的方法,而且正如您发现的那样,非本机对话框也不支持网络位置。在
作为解决方法,您可以导航到
/run/user/(your username)/gvfs/*
中已安装的位置。尽管这看起来很难看,但我建议使用这个,而不是回到PyQt4。在
相关问题 更多 >
编程相关推荐