如何从循环中获取 tkinter 条目

How can I get the tkinter entry from a loop

我想制作一个包含多个 tkinter Entry 小部件的程序。 我使用 for 循环来制作多个 Entry 小部件。 但是我怎样才能从中获取价值呢?

我的测试代码:

from tkinter import *

root=Tk()
variables = []
entries = []
for i in range(10):
    va = StringVar()
    en = Entry(root, textvariable=va)
    en.grid(row=i+1, column=0)
    variables.append(va)
    entries.append(en)

def hallo():
    print(en.get())
button=Button(root,text="krijg",command=hallo).grid(row=12,column=0)

root.mainloop()

如果您使用 StringVars,则需要对它们使用 get()。但是,您似乎不需要使用 StringVars,因此您可以删除它们并在条目小部件上使用 get(),如下所示:

from tkinter import *

root=Tk()
entries = []

for i in range(10):
    en = Entry(root)
    en.grid(row=i+1, column=0)
    entries.append(en)

def hallo():
    for entry in entries:
        print(entry.get())

button=Button(root,text="krijg",command=hallo).grid(row=12,column=0)

root.mainloop()