Python 这需要小部件框架还是类?
我正在尝试创建一个GUI,使用Button小部件将我在Entry()中输入的文本显示到Canvas()小部件。你知道为什么这样不行吗Python 这需要小部件框架还是类?,python,python-2.7,tkinter,Python,Python 2.7,Tkinter,我正在尝试创建一个GUI,使用Button小部件将我在Entry()中输入的文本显示到Canvas()小部件。你知道为什么这样不行吗 import Tkinter master = Tkinter.Tk() Canvass = Tkinter.Canvas(master) Canvass.pack() Entry = Tkinter.Entry(master) Entry.pack() def CreateText(): Canvass.create_text(100, 200,
import Tkinter
master = Tkinter.Tk()
Canvass = Tkinter.Canvas(master)
Canvass.pack()
Entry = Tkinter.Entry(master)
Entry.pack()
def CreateText():
Canvass.create_text(100, 200, anchor="center", text=Entry.get())
Button = Tkinter.Button(text="Press Me",command=CreateText())
Button.pack()
master.mainloop()
问题在于这一行:
Button = Tkinter.Button(text="Press Me",command=CreateText())
在这里,执行回调方法一次(将tex字段的当前内容、空字符串添加到画布),并将该函数的结果设置为回调,即None
相反,您必须传递函数本身,而不调用它
Button = Tkinter.Button(text="Press Me",command=CreateText)
在将方法名赋给命令时,不要在方法名后加大括号