Coolness. Thx, I'll try it.
I ended up putting in a hack that hides the panel, stores the height/width,
resizes to some bogus h/w, then resizes again back to the original width,
then shows it. Works, but not pretty.I'll switch to this more appropriate procedure instead. Thanks for the
response!Tim
I have had occasional problems like this, and calling layout(), refresh(), all methods I could think of would simply fail to do anything. I ended up hacking in a size event - which is basically what you have done, but much simpler. Just post a size event to the event loop - you don't need to actually store the size, change it, then restore it again.
Mark.
ยทยทยท
On Mon, 29 Sep 2003 15:10:41 -0700, Tim Royal <Tim@lith.com> wrote:
-----Original Message-----
From: Robin Dunn [mailto:robin@alldunn.com]
Sent: Monday, September 29, 2003 2:07 PM
To: wxPython-users@lists.wxwindows.org
Subject: Re: [wxPython-users] Panel Refresh QuestionTim Royal wrote:
Howdy howdy. I built a wxScrollingPanel that I fill with individual
sub-panels, and then resize the scrolling panel to fit.Up until this afternoon, When I did this, everythign worked fine, the
scrolling panel would flicker (as the panels were added), and then
it'd display precisely how I wanted.This afternoon, for some reason, I found that it would no longer
display properly (it would show everything bunched up in the top of
the scroll bar. However, if I resize the panel at all, it instantly
pops into view as I'd expect.Is there a way to tell a panel to redraw itself, or is there some way
to force it to display without sending a redraw().. I have no clue
what could have changed (went line by line back through version
history, nothing obvious).Calling panel.Layout() should do it. Depending on the sequence of
things you may want to call it with wxCallAfter(panel.Layout) so it
happens after everything has been fully set up.