Tkinter: different results from the same tcl script
half.italian at gmail.com
half.italian at gmail.com
Tue Jun 26 04:36:13 EDT 2007
On Jun 26, 1:06 am, Fabrizio Pollastri <pollas... at iriti.cnr.it> wrote:
> Hello,
> in mixed python-tcl programming I found the following different
> behaviours of the same tcl script.
>
> If I type manually in the python interpreter the following lines
>
> >>> from Tkinter import *
> >>> w = Tk()
> >>> w.tk.evalfile('my_tcl_script.tcl')
>
> where my_tcl_script.tcl is
>
> #!/bin/sh
> package require Tk
> wm withdraw .
> toplevel .root
> wm title .root "My title"
>
> I obtain one toplevel window with title "My title", as expected.
>
> The same result is obtained with the tcl shell command
>
> % wish my_tcl_script.tcl
>
> Now, I wish to run the same instructions from a python script. So, I
> written the following script
>
> from time import *
> from Tkinter import *
> w = Tk()
> w.tk.evalfile('my_tcl_script.tcl')
> sleep(3)
>
> I expected to see the same toplevel window for 3 seconds, but the result
> of this python script is nothing, no window appears.
>
> If anybody can explain the different behaviour and how to normalize it
> with the correct one, I will be very glad. Thank you in advance.
>
> F. Pollastri
You need a call to `w.mainloop()`
w=Tk()
w.after(3000, lambda: w.quit())
w.mainloop()
~Sean
More information about the Python-list
mailing list