wxPython pop--up ("could not retrieve information...")

Mike Driscoll kyosohma at gmail.com
Thu Aug 7 16:14:18 EDT 2008


On Aug 7, 1:36 pm, mistersulu <misters... at gmail.com> wrote:
> Hi all:
>
> I'm using a wx.ListView object with a multi-threaded wxPython app.
> The list is dynamically generated and accessed across two or more
> threads.  In spite of the fact that I have checks to see if an item at
> a given index is in the list and the entire set of logic is contained
> within a try: except: block I periodically get pop-up windows stating
> "Could not retrieve information for list control item X" when I try to
> change or access the list items.
>
> I searched the web and groups for similar posts but can't find any
> solutions.
>
> My question is:
>
> Is there a setting somewhere in wxPython to either disable these pop-
> up messages or a semaphore or event locking method to enable cross-
> thread access to a listview object?
>
> Thanks in advance,
> sulu

Accessing the GUI's main thread in wxPython (and most other GUI
toolkits) is a no-no. wxPython does provide a few thread-safe methods,
such as wx.CallAfter and wx.PostEvent. Otherwise you'll end up
blocking the GUI's main thread and the GUI will become unresponsive.
Check out Frank's link for one way to deal with this issue or download
the wxPython demo and check the threaded demo out.

http://wxpython.org/download.php

Also, I recommend joining the wxPython user's mailing list. They're
are a lot of nice people there and you'll learn a lot.

http://wxpython.org/maillist.php

Mike



More information about the Python-list mailing list