使用代码时收到空白输出:
from Tkinter import *
global entry1
root = Tk()
def printentry1():
global entry1
print entry1
entry1 = Entry(root)
button = Button(root,text="Submit",command=printentry1)
entry1.pack()
entry1=entry1.get()
button.pack()
root.mainloop()
我希望它将它们放在Shell / Console的输入框中的内容打印出来。它回归""。请帮助运行Py2.7
答案 0 :(得分:1)
在entry1=entry1.get()
之前执行mainloop
将导致entry1
在窗口出现之前具有Entry小部件内的值。由于用户还没有输入任何内容,因此该值将为空字符串。删除该行。
删除该行后,在回调中打印entry
将为您提供类似“.57381704L”的值。这是小部件的唯一标识符。如果您想获取条目的文本内容,请改为打印entry1.get()
。
您不需要全局声明。这些仅在您在函数内重新分配entry1
的值时才有用,这在此处是不必要的。
from Tkinter import *
root = Tk()
def printentry1():
print entry1.get()
entry1 = Entry(root)
button = Button(root,text="Submit",command=printentry1)
entry1.pack()
button.pack()
root.mainloop()