我想用所有受支持的图像格式(可以用来实例化 id | name | start_date | end_date
1 A 2015-01-09 2018-03-23
2 B 2012-07-21 2019-01-22
3 C 2013-04-07 null
-
-
-
的所有文件类型)打开QFileDialog.getOpenFileName
我已经知道我可以使用QIcon
获得所有受支持的图像格式。
让我感到困惑的是,QImageReader.supportedImageFormats()
返回了QImageReader.supportedImageFormats()
的列表,但我不确定如何将其简单地转换为QBytesArray
的列表。
str
答案 0 :(得分:1)
您必须使用QByteArray
方法将bytes
转换为data()
,然后使用string
将字节转换为decode()
。然后,仅将其串联以获得所需的格式。
text_filter = "Images ({})".format(" ".join(["*.{}".format(fo.data().decode()) for fo in supportedFormats]))
fname, _ = qt.QFileDialog.getOpenFileName(
parent=self,
caption="Load a profile picture",
filter=text_filter
)