问题描述
这是我编辑的代码:
from tkinter import *
class UI:
def __init__(self):
self.root = Tk()
self.text= Text(self.root)
self.text.pack()
self.text.bind("<Return>",self.entry.edit_undo)
self.text.mainloop()
UI()
,当我运行它时,它可以正常运行,但是当触发diff.node_root.bind()
时,它显示一个错误,提示TypeError: edit_undo() takes 1 positional argument but 2 were given
。有人可以帮我吗?
解决方法
您传递给bind
(事件处理程序)are expected to take one event
argument的函数。 edit_undo
不接受任何参数(self
除外...)。
如果您对实际的event
不感兴趣,则可以传递忽略它的函数,例如:
self.text.bind("<Return>",lambda e: self.entry.edit_undo())