我有这个代码使用.get()
函数从Tkinter条目中检索输入:
from Tkinter import *
def access():
access_window = Toplevel(root)
access_window.title("Access a Contact")
Label(access_window, text="Enter a first name: ").grid(row=0, sticky=W+E)
access_key = Entry(access_window, width=8)
access_key.grid(row=1, sticky=W+E)
Button(access_window, text="Submit", command=lambda: get_info(str(access_key.get("1.0", "end")))).grid(row=2, sticky=W+E)
但是当我点击按钮时,我收到此错误:
Exception in Tkinter callback
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tkinter.py", line 1470, in __call__
return self.func(*args)
File "/Users/stephenhjb/Documents/First tkinter", line 17, in <lambda>
Button(access_window, text="Submit", command=lambda: get_info(str(access_key.get("1.0", "end")))).grid(row=2, sticky=W+E)
TypeError: get() takes exactly 1 argument (3 given)
为什么会这样?
答案 0 :(得分:1)
Entry对象的方法.get()不接受任何参数。它用于获取Entry对象中的值。 (获取输入字段的当前内容)。不要将此.get()与Python的内置get()混淆。