我在wxPython中有这样的代码:
logo = wx.StaticBitmap(self, -1, wx.Bitmap('picture.png', wx.BITMAP_TYPE_PNG))
在Windows上,它就像一个魅力。但是当我在linux(SUSE)上运行我的应用程序时,我只得到正确大小的空白区域(正好是我的png的大小)。图片 已加载,未引发任何错误。
请注意,我也使用wxBitmapButtons:
self.butOK_ = wx.Button(self, wx.ID_OK, label = u'&OK')
self.butOK_ .SetBitmap(wx.Bitmap('ok.png', wx.BITMAP_TYPE_PNG), wx.RIGHT)
这适用于两个平台。
问题是什么,在MSW下一切看起来都很好,但在linux(wxGTK)上我的图片不可见? 也许相关的是不加载图片ix 400x250和那些工作只有大约16x16或高达32x32?
答案 0 :(得分:1)
我发现,由于未知原因,如果wxStaticBitmap
由wxFrame拥有,则它在Windows下运行但在GTK +中失败。
logo = wx.StaticBitmap(panel, -1, wx.Bitmap('picture.png', wx.BITMAP_TYPE_PNG))
唯一必要的改变是它现在由一个wxPanel,这个框架上的主面板拥有,并且两个平台上的一切都相同。