猿问

wxPython FileDialog 阻止一些文件被选择

我正在设计某种pdf转换器。它可以将图像和其他 pdf 文件合并为一个pdf文件。我正在使用wxPythonGUI 框架。


有两个按钮:一个用于设置输入文件,第二个用于设置输出文件。这是我的两个事件处理程序。


def pick_files(self, event):

    with wx.FileDialog(self, "Pick files", wildcard=self.load_options,

                       style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST | wx.FD_MULTIPLE) as fileDialog:

        if fileDialog.ShowModal() != wx.ID_CANCEL:

            self.files_list = fileDialog.GetPaths()

            self.convert_and_merge_button.Enable()


def convert_and_merge(self, event):

    with wx.FileDialog(self, "Convert and merge", wildcard=self.save_options,

                       style=wx.FD_SAVE | wx.FD_OVERWRITE_PROMPT) as fileDialog:

        if fileDialog.ShowModal() != wx.ID_CANCEL:

            # pass parameters to Converter class

            self.converter.convert(self.files_list, fileDialog.GetPath())

问题是,如果我选择一个输入文件作为输出文件,程序就会崩溃。如何防止某些文件在FileDialog.


我想知道是否有可能有某种类型MessageBox,比如“这个文件被设置为输入文件。你不能覆盖它。” 并回到FileDialog.


沧海一幻觉
浏览 309回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答