2011-11-10 28 views
1

看來,wxPython缺少「一些」示例。如何在Windows上使用wxPython加載BMP文件?

我有下面這段代碼不工作在Windows上:

import wx 
wx.InitAllImageHandlers() # calling it doesn't make any difference 
print wx.Image("sample.bmp") # also tried with type=wx.BITMAP_TYPE_ANY 

返回的值是None,我還可以看到一個警告:Warning: No handler found for image type.

我嘗試添加第二但似乎它並沒有改變一件事。

+1

奇怪的是,WX文檔說BMP處理程序總是可用的。我想你可以在mspaint中加載'sample.bmp'沒有問題? –

+0

是的,它加載在Paint中,我也打開並使用Pain-t保存圖像,即使現在有不同的大小,它不會加載。 – sorin

回答

2

您可能首先需要wx.App創建。

import wx 

app = wx.App(False) 
print wx.Image("wallpaper.bmp") 
+0

可能存在'wx.InitAllImageHandlers()'無法正常工作的錯誤。 'wx.App'也初始化處理程序。但也許沒有人注意到,以這種方式使用它是不常見的。 – Fenikso

+0

嗯,文檔說:InitAllImageHandlers() - InitAllImageHanders的前一個功能現在在\ _core \ _擴展模塊內部完成,所以這個功能已經變成了一個簡單的NOP。 – Fenikso

+0

這意味着wxPython s ****大好時光,它遠非pythonic庫。現在它載入2/3圖像,並抱怨其中一個圖像無效,仍然在4個不同的應用程序中加載相同的圖像,沒有任何問題。 – sorin

相關問題