Threading and wx.....

Mike Driscoll kyosohma at gmail.com
Fri Aug 8 09:15:20 EDT 2008


On Aug 8, 2:19 am, SamG <mad.vi... at gmail.com> wrote:
> On Aug 8, 12:01 pm, SamG <mad.vi... at gmail.com> wrote:
>
>
>
> > Hi,
>
> > Im trying my hand at threading with wx applications. I have written
> > the following code...
>
> > import wx
> > from threading import Thread, Lock
>
> > class createWindow(Thread):
> >     def __init__(self):
> >         Thread.__init__(self)
> >         self.lock = Lock()
> >         self.app=None
>
> >     def run(self):
> >         #self.lock.acquire()
> >         self.app = wx.PySimpleApp()
> >         frame = wx.Frame(None, title="Hello wx")
> >         frame.Show()
> >         #self.lock.release()
> >         self.app.MainLoop()
>
> > if __name__=='__main__':
> >     c = createWindow()
> >     c.start()
> >     c.join()
>
> > Now when i run this program i get a window but the application just
> > does not respond. Is there something that im missing here. Pls let me
> > know. Thanks in advance.
>
> Oops! Murphy's law works again! And the above code is working fine.

You'll probably also find the following wiki article helpful:
http://wiki.wxpython.org/LongRunningTasks

And there's at least one demo in the wxPython Demo that's a good
example of threading.

Mike



More information about the Python-list mailing list