传递一个函数(
lambda在下面的代码中使用),而不是函数的返回值。
from tkinter import *root = Tk() e1 = Entry(root) e1.pack()def add(x): e1.insert(INSERT, x)a = Button(root, text='2', command=lambda: add(2))a.pack()root.mainloop()
除此之外,从
add函数中提取Entry创建代码。否则,每次单击按钮时都会创建条目。

传递一个函数(
lambda在下面的代码中使用),而不是函数的返回值。
from tkinter import *root = Tk() e1 = Entry(root) e1.pack()def add(x): e1.insert(INSERT, x)a = Button(root, text='2', command=lambda: add(2))a.pack()root.mainloop()
除此之外,从
add函数中提取Entry创建代码。否则,每次单击按钮时都会创建条目。