With ButtonPanel class you have a panel with gradient coloring on it and with the possibility to place some buttons on it. Using a standard panel with normal wx.Buttons leads to an ugly result: the buttons are placed correctly on the panel - but with grey area around them.
Gradient coloring is kept behind the images - this was achieved due to the PNG format and the transparency of the bitmaps.

The image are functioning like a buttons and can be caught in your code using the usual self.Bind(wx.EVT_BUTTON, self.OnButton) method.

The control is generic, and support theming (well, I tested it under Windows with the three defauls themes: grey, blue, silver and the classic look).

Check the demo for an almost complete review of the functionalities. 

Download ButtonPanel

Python Files