我是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()
这给出了以下输出:
http://i48.tinypic.com/675xf7.jpg
移动窗户后:
http://i50.tinypic.com/1431f2b.jpg
DOUBT
为什么second
窗口在没有调用函数say_hi()
的情况下打开?
如何解决这个问题?
如何在当前窗口中启动新窗口或框架或在当前窗口中打印标签,以便仅在按下按钮后才打印HI
。
我不想在控制台上打印它,因为大多数时候它都没有被注意到。
SPECS
Visual Python Tkinter IDE 2.6
答案 0 :(得分:2)
()
之后删除say_hi
,say_hi()
将调用该函数:
b = Button(root,text="Say
something",fg="red",bg="black",command=say_hi) b.pack()
答案 1 :(得分:0)
代码中有错误:
在()
say_hi
之后,command
将不在那里
修改后的代码如下:
##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()