【发布时间】:2018-09-12 19:06:07
【问题描述】:
当我在条目中输入一个值时,它应该会打印到控制台,但是,它会打印一个新行而不是其他任何内容。我是 tkinter 的新手,目前正在测试。
def main(self, event= None):
v = StringVar()
entry1 = Entry(width = 20, textvariable = v)
entry1.bind("<Return>", self.main)
entry1.focus()
self.removeWidgits()
homeLabel.place_forget()
exitButton.pack(side = BOTTOM)
entry1.place(x = 0, y = 0)
v = entry1.get()
print(v)
【问题讨论】:
-
您在创建小部件大约一毫秒后调用
entry1.get()。您必须能够快速键入 really 才能在 print 语句之前输入内容。 -
我可以在这里看到几个问题。看来您正在使用类方法。也就是说,您正在尝试创建一个 Entry 字段而不传递其父容器。相反,您很可能应该在
__init__方法中的方法之外创建输入字段,然后使用打印语句获取输入信息。 -
您提供的代码不足以测试您的代码。如果没有更多上下文,您提供的内容没有多大意义。我永远不会构建一个看起来像这样的方法,因为它效率不高且相对冗余。
标签: python python-3.x tkinter