The wx.BitmapButton shows an image, great for those folks who think that a picture is worth a thousand words. The snippet gives an example how to load the image, size the button, and put the image on the the button.
# Example of a wxPython Frame, Panel and BitmapButton # wx.BitmapButton(parent, id, bitmap, pos = wx.DefaultPosition, size = wx.DefaultSize, style=0) # best to size the button to the image width and height plus a border margin # tested with Python24 and wxPython26 vegaseat 22jun2006 import wx class MyFrame(wx.Frame): """make a frame, inherits wx.Frame, add a panel and button""" def __init__(self): # create a frame, no parent, default to wxID_ANY wx.Frame.__init__(self, None, wx.ID_ANY, 'wxBitmapButton', pos=(300, 150), size=(300, 350)) # panel needed to display button correctly self.panel1 = wx.Panel(self, -1) # pick a button image file you have (.bmp .jpg .gif or .png) imageFile = "Btn_down.jpg" image1 = wx.Image(imageFile, wx.BITMAP_TYPE_ANY).ConvertToBitmap() self.button1 = wx.BitmapButton(self.panel1, id=-1, bitmap=image1, pos=(10, 20), size = (image1.GetWidth()+5, image1.GetHeight()+5)) self.button1.Bind(wx.EVT_BUTTON, self.button1Click) # show the frame self.Show(True) def button1Click(self,event): self.SetTitle("Button1 clicked") # test application = wx.PySimpleApp() # call class MyFrame window = MyFrame() # start the event loop application.MainLoop()
Hi and thank you very much for posting your code. Helps a lot ! One question though : is there a way to update the image on the button once created and displayed ?
I'm writing a small application that display the weather. Every hour, I would like to update the information. I'm able to do it for text using ChangeValue on a TextCtrl but cannot find anything to update the 'weather image' that I have positionned on a BitmapButton. Any idea ?
Thank a lot.
Are you able to help answer this sponsored question?
Questions asked by members who have earned a lot of community kudos are featured in order to give back and encourage quality replies.
We have an Access mdb database originally built in the late 90s. We currently use MS Access 2000 on Win7.
Since switching to win7 from XP the database keeps getting ...
So I am having trouble knowing what to return in the bottom method any help would be appreciated .
Here are the specifications for completing the StringArray class:
(a) In ...
I´m not a professional in vb.net, but i try to make a tool for my colleague and me. I got a XMLTreeView on my form and i load a ...