进入没有任何回报

时间:2017-05-23 17:23:09

标签: python python-2.7 tkinter

使用代码时收到空白输出:

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

1 个答案:

答案 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()