この質問を見たばかりなので、この質問を提起します。Tkinterトレースに関連付けられたコールバック関数の制限は何ですか?。
そして、私はlambda
別の議論を追加するために使用します。コードは次のとおりです。
from tkinter import *
def callbackfunc(*args, **kwargs):
print(args,kwargs)
class App(object):
def __init__(self, master):
frame = Frame(master)
frame.pack()
optionvalue = IntVar(master)
optionvalue.set(2)
optionvalue.trace("w",lambda a,b,c,x='test':callbackfunc(x))
self.optionmenu = OptionMenu(master, optionvalue, 1, 2, 3, 4)
self.optionmenu.pack()
root = Tk()
app = App(root)
root.mainloop()
私の出力:('test',) {}
知りたいのは:ラムダを使用すると、他の3つの引数が出力されないのはなぜですか?