TypeError:正好采用1个参数(给定2个)

时间:2014-09-27 13:08:23

标签: python tkinter typeerror

我是编程新手,学过python语法。坚持我的第一个GUI程序!

这是我的代码:

#User name

userLabel = Label(self.signView, text="User Name")
userLabel.grid(sticky = E)
self.userEntry = Entry(self.signView)
self.userEntry.grid(row=0, column=1)

self.labelUserVar = StringVar()
self.validLabel = Label(self.signView, textvariable=self.labelUserVar, 
                         anchor="w", fg="red")
self.validLabel.grid(row=0, column=2)
self.userEntry.bind("<Return>", self.CheckUser)

以下是CheckUser()函数:

def CheckUser(self):
    self.labelUserVar.set("unavailable user name!")

我收到了这个错误。

TypeError: CheckUser() takes exactly 1 argument (2 given)

1 个答案:

答案 0 :(得分:9)

您传递给.bind() takes the event as an argument的功能,无论您是否需要,它都会被传递。

将功能定义更改为

def CheckUser(self, event):
    self.labelUserVar.set("unavailable user name!")