前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >wxpython GUI界面显示jpg图片

wxpython GUI界面显示jpg图片

原创
作者头像
代码伴一生
修改2021-11-01 13:52:00
1.4K0
修改2021-11-01 13:52:00
举报
文章被收录于专栏:代码伴一生代码伴一生
代码语言:javascript
复制
# show a jpeg (.jpg) image using wxPython, newer coding style
two different ways to load and display are given
tested with Python24 and wxPython25   vegaseat   24jul2005
import wx
import  cStringIO
class Panel1(wx.Panel):
  """ class Panel1 creates a panel with an image on it, inherits wx.Panel """
  def init(self, parent, id):

# create the panel
wx.Panel.__init__(self, parent, id)
try:
    # pick a .jpg file you have in the working folder
    imageFile = 'Moo.jpg'
    data = open(imageFile, "rb").read()
    # convert to a data stream
    stream = cStringIO.StringIO(data)
    # convert to a bitmap
    bmp = wx.BitmapFromImage( wx.ImageFromStream( stream ))
    # show the bitmap, (5, 5) are upper left corner coordinates
    wx.StaticBitmap(self, -1, bmp, (5, 5))

    # alternate (simpler) way to load and display a jpg image from a file
    # actually you can load .jpg  .png  .bmp  or .gif files
    jpg1 = wx.Image(imageFile, wx.BITMAP_TYPE_ANY).ConvertToBitmap()
    # bitmap upper left corner is in the position tuple (x, y) = (5, 5)
    wx.StaticBitmap(self, -1, jpg1, (10 + jpg1.GetWidth(), 5), (jpg1.GetWidth(), jpg1.GetHeight()))
except IOError:
    print "Image file %s not found" % imageFile
    raise SystemExit


 
app = wx.PySimpleApp()
create a window/frame, no parent, -1 is default ID
increase the size of the frame for larger images
frame1 = wx.Frame(None, -1, "An image on a panel", size = (400, 300))
call the derived class
Panel1(frame1,-1)
frame1.Show(1)
app.MainLoop()</pre> 

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档