当前位置:  开发笔记 > 编程语言 > 正文

如何从内存数据创建wx.Image对象?

如何解决《如何从内存数据创建wx.Image对象?》经验,为你挑选了1个好方法。

我正在使用wxPython在Python中编写GUI应用程序,我想在静态控件(wx.StaticBitmap)中显示图像.

我可以用来wx.ImageFromStream从文件加载图像,这可以正常工作:

static_bitmap = wx.StaticBitmap(parent, wx.ID_ANY)
f = open("test.jpg", "rb")
image = wx.ImageFromStream(f)
bitmap = wx.BitmapFromImage(image)
static_bitmap.SetBitmap(bitmap)

但是,我真正希望能够做的是从内存中的数据创建图像.所以,如果我写

f = open("test.jpg", "rb")
data = f.read()

我该如何创建一个wx.Image对象data

谢谢你的帮助!



1> codelogic..:

您应该能够StringIO将缓冲区包装在内存文件对象中.

...
import StringIO

buf = open("test.jpg", "rb").read()
# buf = get_image_data()
sbuf = StringIO.StringIO(buf)

image = wx.ImageFromStream(sbuf)
...

buf 可以用任何数据字符串替换.

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有