For the GLcanvas I had to implement this to stop flicker on Win32:
I wonder if this is the issue for your panel... Perhaps we need to override that method by default - where the default will be to call the superclass implementation (which would redraw the background). Overriding it you could possibly choose to do nothing....
void MaxGLCanvas::OnEraseBackground(wxEraseEvent& WXUNUSED(event)) { // Do nothing, to avoid flashing on MSW }
I wonder if this is the issue for your panel... Perhaps we need to override that method by default - where the default will be to call the superclass implementation (which would redraw the background). Overriding it you could possibly choose to do nothing....