On Jul 6, 2010, at 6:12 PM, Douglas Buchanan wrote:
> The issue is that once dabo.ui.yieldUI is called in the code above, it has
> the desired effect of allowing the worker thread the ability to post events
> that are received by the progress dialog (dDialog), but the call into yieldUI
> never returns until the dForm that this code is called from is closed. Is
> there a better way to refresh/repaint the UI while the thread is processing?
> The sad thing is that this works correctly on Windows, but on Linux it does
> not.
One thing I know I've read several times is that all UI interaction
with wxPython *must* be in the main thread; updates to the UI from other
threads either won't have an effect or (as I've experienced) throw errors. It
sounds like you're trying to structure it correctly, but the form is still
getting tripped up by the threads.
You might want to ask on the wxPython list, because there is nothing
that we're doing at the Dabo layer that would affect things. You might also try
the variation that wx offers: instead of:
dabo.ui.yieldUI()
try:
import wx
wx.SafeYield()
... and let me know if that make any difference.
-- Ed Leafe
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message:
http://leafe.com/archives/byMID/[email protected]