PyQt:QFileDialog.getExistingDirectory 使用默认目录,与用户无关

2024-02-13

当使用QFileDialog.getExistingDirectory我找到了指定目录默认路径的方法。我想在我的 Linux (Mint) 机器上的(用户)主文件夹中使用默认目录。我用了:

my_dir = QtGui.QFileDialog.getExistingDirectory(
    self,
    "Open a folder",
    "/home/my_user_name/",
    QtGui.QFileDialog.ShowDirsOnly
    )

效果非常好。现在的下一个“级别”是能够为每个用户执行此操作。我尝试了标准的Linux方式并进行了更改/home/my_user_name/ to ~/。那没有用。它导致工作目录而不是用户的目录。

从终端调用我的应用程序时是否应该使用更多系统参数?或者我缺少 PyQt 函数?


您可以使用以下方式获取用户的主目录os.path.expanduser https://docs.python.org/2/library/os.path.html#os.path.expanduser

>>> from os.path import expanduser
>>> expanduser("~")
/home/user_name

这适用于 Windows 和 Linux。

你的代码块将如下所示

my_dir = QtGui.QFileDialog.getExistingDirectory(
    self,
    "Open a folder",
    expanduser("~"),
    QtGui.QFileDialog.ShowDirsOnly
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PyQt:QFileDialog.getExistingDirectory 使用默认目录,与用户无关 的相关文章

随机推荐