[Tutor] program hangs in while loop using wx.yield

Walter Prins wprins at gmail.com
Tue Nov 16 20:29:15 CET 2010


Not wanting to hijack Terry's conversation, but for what it's worth:

On 16 November 2010 18:08, Patty <patty at cruzio.com> wrote:

> If I just can't figure out how to do this with Tkinter and the Python
> Imaging Library, is 'wxPython' the additional software I would want to
> install and try with?  Is its purpose to make GUI event programming easier
> (that would mean the defaults provided are difficult, right? So I shouldn't
> feel bad about being confused?)  If so, can someone explain these additional
> software packages out there?  I mean are they coming from some third
> companies?  And why?  If the software is free.  I'm not understanding the
> history or business part of these Python modules and libraries.  Isn't there
> one organization who is discussing or approving standards for this language?
>

wxPython is a set of Python wrappers for the wxWidgets GUI component set.
wxWidgets in turn is a set of C++ GUI wrapper controls that wraps the native
GUI controls (e.g. edit boxes, memo boxes, drop downs, buttons, radio
buttons, checkboxes, menu's and so on)  on various platforms.

Hence it thus provides a common set of classes/components/controls and
effectively a common API for writing GUI based applications in a cross
platform fashion, e.g. that target multiple platforms (e.g. Mac, Windows,
Unix, Linux etc.)   So, by using wxPython you can write applications knowing
that your app should work pretty much unmodified on any system where
wxWidgets is available/installed.

wxWidgets as well as wxPython is open source, so the source is freely
available and managed/supported by their respective development teams.   For
more see:
http://www.wxwidgets.org/about/
http://www.wxpython.org/what.php

You can download and install wxPython for Windows here (make sure to get the
one corresponding to the version of Python that you have installed.):
http://www.wxpython.org/download.php#stable

You should also install the demo application and documentation.  The demo
application will give you an idea of what you can do and how to do it.

As an aside, there are other similar (competing) libraries that one might
use, e.g. GTK or QT for example (or for that matter TK), which needless to
say also have Python wrappers.  Which to use is largely a matter of context
and taste, but suffice it to say wx is not a bad choice.  It's however quite
large, so don't expect it to all sink in overnight. (I certainly am no wx
expert, I just know enough to be dangerous ;) )

As for Event driven programming, it takes a little getting used to if you're
only used to normal "straight line" programs at this point, GUI programming
adds its own set up of detail and complexity on top of the event-driven
programming model (not least that it usually demands a relatively solid
understanding of OO concepts), so don't feel bad if you're feeling
confused.  (You might want to read up/google "Event driven programming" and
do some research and come back with more questions after you've tried a few
things yourself.)

That's my £0.01 worth anyway,

Walter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20101116/cd637697/attachment-0001.html>


More information about the Tutor mailing list