On Wednesday, July 17, 2013 7:42:45 PM UTC+8, Dave Angel wrote: > On 07/17/2013 07:10 AM, fronag...@gmail.com wrote: > > On Wednesday, July 17, 2013 6:07:22 PM UTC+8, Dave Angel wrote: > >> On 07/16/2013 11:04 PM, fronag...@gmail.com wrote: > >>> Noted on the quoting thing. > >>> Regarding the threading, well, first, I'm not so much a programmer as > >>> someone who knows a bit of how to program. > >>> And it seems that the only way to update a tkinter window is to use the > >>> .update() method, which is what I was experimenting with. Start up a new > >>> thread that just loops the .update() with a 1ms sleep until the download > >>> is done. It seems to work, actually. > >> update() is to be used when it's too awkward to return to mainloop. In > >> my second approach, you would periodically call it inside the processing > >> loop. But unless tkinter is unique among GUI's, it's unsafe to do that > >> in any thread besides the GUI thread. > >> DaveA > > Yes, based on advice from this thread, I'm doing that. From my main thread, > > I create a thread that handles the download while updating a variable that > > the mainloop displays as a text output, and in that mainloop, I have a > > while loop that updates the GUI until the downloading is done. > I can't figure out what you're really doing, since each message from you > says something different. You don't need a separate while loop, since > that's exactly what app.mainloop() is. > -- > > DaveA
Hm. My apologies for not being very clear. What I'm doing is this: self.loader_thread = Thread(target=self.loadpages, name="loader_thread") self.loader_thread.start() while self.loader_thread.isAlive(): self.root_window.update() sleep(0.05) Where loadpages is a function defined elsewhere. -- http://mail.python.org/mailman/listinfo/python-list