当对于条目小部件使用.get()时,在tkinter中获得无法解释的错误:'Tkinter回调中的异常Traceback ..'

时间:2017-01-24 11:04:35

标签: python tkinter python-3.5

我正在尝试从tkinter的输入框中获取用户输入的文本。每当我使用下面的代码这样做时,我得到一个无法解释的错误。这是代码:

from tkinter import *
root = Tk()
e = ''
def g():
    word = e.get()
    T.insert(word)
    e.delete(0, END)
T = Text(root)
T.pack()
e = Entry(root, bg= 'blue', textvariable = e, fg= 'white')
e.pack()
e.bind('<Return>', g)
root.mainloop()

这是错误:

Exception in Tkinter callback Traceback (most recent call last):  
File "C:\Program Files\Python35\lib\tkinter\__init__.py", line 1549,
in __call__
    return self.func(*args) TypeError: g() takes 0 positional arguments but 1 was given

1 个答案:

答案 0 :(得分:0)

当您通过按键触发回调(如键盘或鼠标按键)时,它会向回调发送一个事件。此事件对象包含按下的按钮,鼠标单击的坐标等信息。要解决此问题,请为事件(或具有默认参数的潜在事件)创建函数帐户:

def g(event=None):