在Ubuntu中打开文件时出现wxPython错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Ubuntu中打开文件时出现wxPython错误相关的知识,希望对你有一定的参考价值。

我正在研究this tutorial,我注意到这段代码片段存在问题:

def OnOpen(self, e):
    """To open d' files"""
    self.dirname = ""
    dlg = wx.FileDialog(self, "Choose a file", self.dirname, "", "*.*", wx.OPEN)
    if dlg.ShowModal() == wx.ID_OK:
        self.filename = dlg.GetFilename()
        self.dirname = dlg.GetDirectory()
        f = open(os.path.join(self.dirname, self.filename))
        self.control.SetValue(f.read())
        f.close()
    dlg.Destroy()

我在Ubuntu 11.10中运行代码,只要您不尝试从搜索或最近打开的文件功能中选择文件,它就可以正常工作。显然它在这些情况下没有收到目录,因为self.dirname是None。我想知道GetFilename中发生了什么,以及当选择搜索或最近使用的文件时,Linux如何在对话框中返回文件目录。

任何有关这方面的见解将不胜感激。此外,如果有任何地方找到具体的代码将不胜感激。我知道它在我的驱动器上,但我不知道它的文件是什么。

答案

GetPath不是您想要用来获取所选文件的路径和文件名的函数吗?

以上是关于在Ubuntu中打开文件时出现wxPython错误的主要内容,如果未能解决你的问题,请参考以下文章

尝试运行 Ubuntu 时出现 VirtualBox 错误“无法打开会话”[关闭]

在 R 中打开 CSV 文件时出现错误消息

为啥在我的程序中打开某些 wav 文件时出现此错误“EMCIDeviceError”

尝试在 Apache 2.4.6 Ubuntu 13.10 上运行 perl cgi 文件时出现 500 内部服务器错误

尝试在 Apache 2.4.6 Ubuntu 13.10 上运行 perl cgi 文件时出现 500 内部服务器错误

scanf 调用时出现“无法打开输出文件”错误