首页 > 解决方案 > 如何在 wxpython 中获取 png 或 jpeg 或 bmp 图片

问题描述

我想搜索 png、jpeg 和 bmp 图片,但它似乎不起作用。

def onClick(self,Event):
        wildcard='PNG files (*.png)|*.png|'|'BMP files (*.bmp)|*.bmp|'|'JPEG files (*.jpg)|*.jpg|'
        openFileDialog = wx.FileDialog(self, "Open", "", "", wildcard,wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
        openFileDialog.ShowModal()

这是错误,我不知道如何解决

wildcard='PNG files (*.png)|*.png|'|'BMP files (*.bmp)|*.bmp|'|'JPEG files (*.jpg)|*.jpg|'
TypeError: unsupported operand type(s) for |: 'str' and 'str'

标签: pythonwxpythonwildcard

解决方案


做一个字符串 | 字符串没有意义。这意味着

'something'|'something'

抛出上面的异常。你所有的| 字符应该是通配符字符串的一部分。

对于仅 png 使用:

'PNGs (*.png)|*.png'

对于 gif 和 jpeg,请使用:

'Various image formats - png,jpg|*.png;*.jpg'

如果你想让用户选择:

'Various image formats|*.png;*.jpg|Just BMPs (*.bmp)|*.bmp'

推荐阅读