I wrote my first useful wxPython application over the weekend, and here's my number one helpful tip for those of you out there who are trying to get started with wxPython.

Maybe there's something about my installation that isn't right, but when there was an error in my code, I saw a little stderr window pop up, and then disappear before I could read what it said. Very frustrating. Here's what I finally figured out to fix it.

Instead of the usual main loop:

app = MyApp()
app.MainLoop()

Use this instead:

try:
    app = MyApp()
    app.MainLoop()
except:
    import sys, traceback
    xc = traceback.format_exception(*sys.exc_info())
    wxMessageBox(''.join(xc))

Now errors in executing the main loop will be displayed in a message box, where (imagine this) you can read them!

tagged: , » 1 reaction

Comments

[gravatar]
Anon 9:44 PM on 1 Nov 2008

Hah! Thanks! 5 five years later, I suffer from the same problem and the cure still works.

Add a comment:

name
email
Ignore this:
not displayed and no spam.
Leave this empty:
www
not searched.
 
Name and either email or www are required.
Don't put anything here:
Leave this empty:
URLs auto-link and some tags are allowed: <a><b><i><p><br><pre>.