styleWin &= ~WS_CLIPCHILDREN;
if ( exstyle )
+ {
*exstyle = 0;
+ // If any of the ancestors are scrolling windows, style has to be
+ // WS_EX_TRANSPARENT or the static box won't be painted when the window
+ // is scrolled. We try not to do this normally, because we get a lot of
+ // flicker.
+ for ( wxWindow *win = GetParent(); win; win = win->GetParent() )
+ {
+ if ( win->HasFlag(wxVSCROLL) || win->HasFlag(wxHSCROLL) )
+ {
+ *exstyle = WS_EX_TRANSPARENT;
+ break;
+ }
+
+ if ( win->IsTopLevel() )
+ break;
+ }
+ }
+
return styleWin | BS_GROUPBOX;
}