【发布时间】:2013-03-13 06:43:39
【问题描述】:
我是 Tkinter 编程新手。
数据
我有以下 tkinter 代码:
##Program to print something or exit
def say_hi():
second = Tk()
Label1 = Label(second,text="HI!")
Label1.pack()
from Tkinter import *
root = Tk()
r = Button(root,text="QUIT",fg="red",command=quit)
r.pack()
b = Button(root,text="Say something",fg="red",bg="black",command=say_hi())
b.pack()
root.mainloop()
这给出了以下输出:
然后将窗口移到后面:
怀疑
为什么second 窗口打开而没有调用函数say_hi()?
如何解决这个问题?
如何在当前窗口中启动一个新窗口或一个框架或者在当前窗口中打印一个标签,以便在按下按钮后才打印HI。
我不想在控制台上打印它,因为大多数时候它都会被忽视。
规格
Visual Python Tkinter IDE 2.6
【问题讨论】:
-
你不应该创建多个
Tk的实例; Tkinter 并非设计为以这种方式使用,它会以意想不到的方式运行。如果您需要多个窗口,请创建Toplevel的实例。