【发布时间】:2017-06-15 05:27:03
【问题描述】:
我正在尝试使用 for 循环设计具有 5 个条目小部件(两侧)范围的小型 tkinter 窗口,如下图所示。
现在我的要求是在左侧小部件中键入一些值,它应该自动显示在右侧,同时给出 Tab 键。我尝试了使用 lambda 的绑定方法并得到了值。但我想知道如何在每个小部件上设置值。
我的代码
import tkinter as tk
root = tk.Tk()
num = 5
def my_funct(var):
e.set(var)
r=0
for y in range(num):
e = tk.StringVar()
y = tk.Entry(root)
y.bind("<Tab>", lambda event, y=y:my_funct(y.get()))
y.grid(row=r, column=1)
z = tk.Entry(root, textvariable=e)
z.grid(row=r, column=2)
r +=1
root.mainloop()
我得到的结果如下图所示。有人可以帮助我完成我的代码以实现我的期望吗?
如您所见,该值仅显示在每个 Tab 键的最后一个小部件中。有人可以帮我解决这个问题,请解释一下如何实现我所需的输出。
提前致谢!
【问题讨论】:
标签: python python-3.x tkinter