我有一个 python GUI 应用程序 (wx),它能够打开具有备用扩展名 (.giz) 的 zip 文件。
def GetGIZData(self, filepath):
#{extract the zip to a temp dir and read the files}
pass
我的问题是这样的:如果我在 C:\InputFile.giz 上有一个文件,当我双击时,如何从 Windows 中的卡住 python 应用程序中获取“C:\InputFile.giz”的句柄输入文件.giz? (本质上,我希望复制双击 Word 文档打开 Word 并显示文件的功能,但我自己的应用程序和我自己的文件类型除外。)
我已阅读有关 how to register a file type with an application 的文档但我似乎找不到任何关于如何获取在 python 应用程序中单击的文件的文件路径的信息。
有什么想法吗?
最佳答案
如果您的应用在启动后未注册为接受文件,则双击 .giz
文件将运行程序的新副本,并将文件的路径作为第一个参数。这意味着它将作为 sys.argv[1]
提供。到您的脚本。
wx
还提供与 wx.App
对象上的 argv
属性相同的参数列表,但 IIRC 实际上并未记录在 Python version of the class因为没有必要。
关于Python 卡住应用程序文件类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21056591/