我正在尝试从Tkinter的Entry小部件中获取Text。它适用于Entry1.get(),但它不能使用textvariable
我做错了什么?
from Tkinter import *
master = Tk()
v = StringVar()
def Entered(p1):
print 'Got: ', Entry1.get()
print 'Got: ', v.get()
Entry1 = Entry(master, text = '', width = 25, textvariable = v)
Entry1.pack()
Entry1.bind('<Return>', Entered)
答案 0 :(得分:2)
问题在于text
。
如果你给出text
参数,似乎textvariable.get()
将不返回任何内容。我不知道它是不是一个错误。
from Tkinter import *
master = Tk()
v = StringVar()
def Entered(p1):
print 'Got: ', Entry1.get()
print 'Got: ', v.get()
Entry1 = Entry(master, width = 25, textvariable = v) # No text now
Entry1.pack()
Entry1.bind('<Return>', Entered)
master.mainloop()
如果您输入asd
,则会返回:
Got: asd
Got: asd
如果您将条目更改为:
,则有趣的部分Entry1 = Entry(master, text = 'sajt', width = 25, textvariable = v)
我仍然会在v.get()
而不是sajt
的情况下返回任何内容。