【问题标题】:Specifying path using PyQt5 QtFileDialog.getOpenFileName() using a variable rather than a literal string使用 PyQt5 QtFileDialog.getOpenFileName() 使用变量而不是文字字符串指定路径
【发布时间】:2017-04-24 09:59:04
【问题描述】:

如果我执行以下操作:

self.file_dialog, _ = QFileDialog.getOpenFileName(self, "Open a calendar event(s) file", "/home/mdavies/Desktop/",
                    "iCalendar Files (*.ics)")

文件对话框在正确的文件夹 (/home/mdavies/Desktop/) 中打开。但是,如果我尝试对路径使用变量而不是文字:

from os.path import expanduser

folder = expanduser("~/Desktop")

self.file_dialog, _ = QFileDialog.getOpenFileName(self, "Open a calendar event(s) file", folder,
                    "iCalendar Files (*.ics)")

我正在使用 Python 3.5.2 和 PyQt 5.5.1 在 Kubuntu 16.04 上运行代码。

任何帮助将不胜感激。

【问题讨论】:

  • 我已经测试了你的代码并且它可以工作,我觉得很奇怪你有问题。

标签: python pyqt


【解决方案1】:

我发现了一个(事后看来)明显的解决方案,这意味着我不必使用变量:

self.file_dialog, _ = QFileDialog.getOpenFileName(self, "Open a calendar event(s) file", expanduser("~/Desktop"),
                    "iCalendar Files (*.ics)")

仍然不清楚为什么变量不起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-07
    • 2021-09-30
    • 2018-05-02
    • 2021-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多