[Idle-dev] Interruptable code?
taleinat at gmail.com
Sat Dec 16 16:15:16 CET 2006
On 12/16/06, Douglas S. Blank <dblank at brynmawr.edu> wrote:
> On Sat, December 16, 2006 3:21 am, Kurt B. Kaiser said:
> >> - I can't use idle with sub processes (because I want to interact with
> >> Tkinter in a single thread)
> > If you run with the subprocess and construct Tkinter objects, they run
> > a process separate from the IDLE GUI. This is an advantage in most
> Yes, I realize that. But there is one important case where it is not:
> interactively creating and using Tkinter and/or the Python prompt. For
> example, being able to create a window and interactively type in commands
> to alter the window. Maybe I am using Tkinter incorrectly from Idle? When
> I type:
> >>> import Tkinter
> >>> tk = Tkinter.Tk()
> in idle -n (or raw Python), I get to interactively manuipulate Tk windows.
> When run in idle with subprocesses, it doesn't show any windows until a
> mainloop() (or similar method) is called.
This always works for me:
root = Tkinter.Tk()
This way you can even kill the mainloop without killing IDLE.
Hooking onto IDLE's GUI mainloop isn't a very good option IMO. It's very
useful when you're debugging IDLE itself, but otherwise it's a source
of inconsistent behavior and weird bugs.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the IDLE-dev