2017-02-12 25 views
-1
import wx 
import sys, glob 

class DemoFrame(wx.Frame): 
def __init__(self): 
    wx.Frame.__init__(self, None, -1,"wx.ListCtrl in wx.LC_ICON mode",size=(600,400)) 
    il_max=0 
    il = wx.ImageList(200,200) 
    for name in glob.glob("img/*.bmp"): 
     bmp = wx.Bitmap(name, wx.BITMAP_TYPE_BMP) 

     il_max = il.Add(bmp) 

    self.list = wx.ListCtrl(self, -1, style=wx.LC_ICON | wx.LC_AUTOARRANGE) 

    self.list.AssignImageList(il, wx.IMAGE_LIST_NORMAL) 

    for x in range(25): 
     img = x % (il_max+1) 
     self.list.InsertImageStringItem(x, "This is item %02d" % x, img) 

app = wx.PySimpleApp() 
frame = DemoFrame() 
frame.Show() 
app.MainLoop() 

此代码只能与BMP工作不能与JPEG或PNG如何使用位图加载任何图像格式在wxPython

适合什么需要改变,以得到它与任何图像格式工作?

回答

0

变化

bmp = wx.Bitmap(name, wx.BITMAP_TYPE_BMP) 

bmp = wx.Bitmap(name, wx.BITMAP_TYPE_ANY) 

还有

BITMAP_TYPE_CUR 
BITMAP_TYPE_ICON 
BITMAP_TYPE_IFF 
BITMAP_TYPE_GIF 
BITMAP_TYPE_JPEG 
BITMAP_TYPE_PNG 
BITMAP_TYPE_TIF 

....等等

+0

或者只是'BMP = wx.Bitmap(名称)'因为'..._ ANY'是默认值。 – RobinDunn

相关问题