Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #50796

Re: tkinter redraw rates

From Dave Angel <davea@davea.name>
Subject Re: tkinter redraw rates
Date 2013-07-17 13:38 -0400
References (4 earlier) <a3e5a3bc-248b-4f87-b161-596c6fe77fba@googlegroups.com> <mailman.4799.1374055664.3114.python-list@python.org> <ca274116-be7a-4eda-8e96-a47dd80966c1@googlegroups.com> <mailman.4801.1374061383.3114.python-list@python.org> <f564a889-99f0-4e9c-841f-830356743252@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.4805.1374082807.3114.python-list@python.org> (permalink)

Show all headers | View raw


On 07/17/2013 09:18 AM, fronagzen@gmail.com wrote:
> On Wednesday, July 17, 2013 7:42:45 PM UTC+8, Dave Angel wrote:
>> On 07/17/2013 07:10 AM, fronagzen@gmail.com wrote:
>>> On Wednesday, July 17, 2013 6:07:22 PM UTC+8, Dave Angel wrote:
>>>> On 07/16/2013 11:04 PM, fronagzen@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.
>

Presumably this fragment is from a method of some class you've written. 
  Is it an event handler, or is this happening before you finish setting 
up the GUI?  Somewhere at top-level, you're supposed to fall into a call 
to mainloop(), which doesn't return till the user cancels the app.



-- 
DaveA

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

tkinter redraw rates fronagzen@gmail.com - 2013-07-16 17:57 -0700
  Re: tkinter redraw rates David Hutto <dwightdhutto@gmail.com> - 2013-07-16 21:32 -0400
  Re: tkinter redraw rates David Hutto <dwightdhutto@gmail.com> - 2013-07-16 21:34 -0400
  Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-16 21:40 -0400
    Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-16 18:51 -0700
      Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-16 22:21 -0400
        Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-16 20:04 -0700
          Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-17 06:07 -0400
            Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-17 04:08 -0700
              Re: tkinter redraw rates Michael Torrie <torriem@gmail.com> - 2013-07-17 16:53 -0600
            Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-17 04:10 -0700
              Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-17 07:42 -0400
                Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-17 06:18 -0700
                Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-17 13:38 -0400
                Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-17 17:44 -0700
                Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-17 21:07 -0400
                Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-17 21:38 -0700
                Re: tkinter redraw rates Dave Angel <davea@davea.name> - 2013-07-18 00:52 -0400
                Re: tkinter redraw rates Christian Gollwitzer <auriocus@gmx.de> - 2013-07-18 09:20 +0200
                Re: tkinter redraw rates fronagzen@gmail.com - 2013-07-18 02:10 -0700
                Re: tkinter redraw rates Peter Otten <__peter__@web.de> - 2013-07-17 20:10 +0200

csiph-web