This series is a part of Club ShowMeDo. Click to learn why you should join our
club with a simple monthly subscription.
We teach Python and all the cool modules
Topics include beginner Python, GUIs, Web and Desktop Apps
Long, specially crafted video tutorials just for you
Club video tutorials extend our normal Free content
Save your time - we've done the research for you
Keep your skills up-to-date
Learn at your own pace, everything you need is shown to you
Over 12 hours of archived material are waiting for you in the club
 Ian Ozsvald
I am the co-founder of ShowMeDo (see http://showmedo.com/about), author of `The Screencasting Handbook <http://thescreencastinghandbook.com>`_ and the founder of the professional screencast production company `ProCasts <http://procasts.co.uk>`_:
.. image:: http://procasts.co.uk/media/procasts_sma ...
Debug Tip (stdout) and wxPython Naming Conventions [ID:527] (3/14)
 Ian Ozsvald
I am the co-founder of ShowMeDo (see http://showmedo.com/about), author of `The Screencasting Handbook <http://thescreencastinghandbook.com>`_ and the founder of the professional screencast production ...
Our authors tell us that feedback from you is a big motivator. Please take a few moments to let them know what you think of their work.
(Showmedo is undergoing major changes. To
report any problems viewing the videos please
email us and include
browser and OS specifics. Cheers - Kyran.)
When debugging a new wxPython application it is common for error messages to go to a separate window. If you application is buggy and crashes on startup then these error messages are lost! Here I show you how to keep track of the errors using 'App(redirect=False)'.
I also discuss some of the differences between wxPython and Python's naming conventions and give you a useful heuristic (stick with the naming convention of the library so you have consistency!).
MAIN_WINDOW_DEFAULT_SIZE = (300,200)
def __init__(self, parent, id, title):
style=wx.DEFAULT_FRAME_STYLE ^ (wx.RESIZE_BORDER) # XOR to remove the resizeable border
wx.Frame.__init__(self, XXparent, id, title=title, size=MAIN_WINDOW_DEFAULT_SIZE, style=style)
self.Center() # open in the centre of the screen
self.panel = wx.Panel(self)
self.panel.SetBackgroundColour('White') # make the background of the window white
self.frame = Frame(parent=None, id=-1, title='Image Viewer')
if __name__ == "__main__":
# make an App object, set stdout to the console so we can see errors
app = App()
#app = App(redirect=False)
Are you learning Python? To keep the site running clean and ad-free we've started Club ShowMeDo. The club will allow you access to some special videos we're making to pass on programming skills we consider important to the development and enjoyment of Free Open Source Software (FOSS).
The focus at the moment is on developing with the Python programming language, one of the backbones of the FOSS movement with a huge number of included and third-party libraries.
We welcome feedback and we want to hear your ideas.
Showmedo's development is fairly rapid and bugs will inevitably creep in. If you have any problems please drop us a line using the contact address below. Likewise, any suggestions for improvements to the site are gratefully received.