wxPython before MainLoop

david david at nospam.spam
Thu Aug 9 21:51:39 EDT 2007


I'm disappointed that I didn't get a wxPython solution.

If the only way to get wxPython to correctly handle
this simple task is to code around it, I don't think
wxPython is really ready for Windows.

Is there a better place to ask?

Regarding the suggestions:

Bjoern, you're wrong. The GUI needs to be displayed
for the user to analyse. A delay between display and
readiness is much better than a delay before display
or a delay with the GUI half-drawn.

Mike, the screen does display correctly, it's just
that in Windows, screen updates are not processed
while the application is busy.

7Stud, that's a solution. Unless anyone comes up
with a direct solution, I guess I'll have to do that.

[david]


[david] wrote:
> I'd like to refresh the display before I start the main loop.
> 
> I have code like this:
> 
> app = App()
> app.Show()
> app.long_slow_init()
> app.MainLoop()
> 
> 
> The main frame partly loads at Show, but because the mainloop has not 
> started yet, the display does not update until long_slow_init() finishes.
> 
> Alternatively, I could code
> 
> app = App()
> app.long_slow_init()
> app.Show()
> app.MainLoop()
> 
> Which would give me a crisp Show, but there would be a long slow wait 
> before the app showed any activity at all. I would need a splash screen.
> 
> I'd rather not have a splash screen (and I don't know how anyway). I'd 
> like to just make app.Show() finish correctly before running 
> long_slow_init.
> 
> Is there a wx internal method that I can use to give Windows the 
> opportunity to finish painting the frame before I run long_slow_init()?
> 
> Or is there a better idea?
> 
> (david)



More information about the Python-list mailing list