Tkinter - 获取条目值数组

Vic*_*ira 0 python numpy tkinter python-2.7

我的 Tkinter GUI 中有 20 个使用 for 循环创建的条目(将来可能会有更多条目,我真的不希望有 50 行代码只是为了定义条目)。我需要收集条目值以创建一个 numpy 数组。作为在黑暗中的一枪,我尝试过这个:

master = Tk()

R=StringVar()

namR = []
for ii in range(0,20):
    namR.append(Entry(master), textvariable=R[ii])
    namR[ii].grid(row=2+ii, column=3)
Run Code Online (Sandbox Code Playgroud)

这显然行不通(StringVar instance has no attribute '__getitem__'),但我认为目标很明确。

请问有什么建议可以让这项工作成功吗?

Tig*_*kT3 5

textvariable您应该在通话中包含您的内容Entry(),而不是在通话之后(append(Entry(master, textvariable=xyz))而不是append(Entry(master), textvariable=xyz))。append()不知道如何处理第二个参数。list接下来,您可以为对象创建StringVar并使用类似 的内容引用它们Entry(master, stringvariable=svars[ii])。但是,只有当您想要执行变量跟踪之类的操作时,这才是必要的。如果您只想检索条目对象中的文本,可以使用my_entry.get().

master = Tk()

namR = []
for ii in range(0,20):
    namR.append(Entry(master))
    namR[ii].grid(row=2+ii, column=3)
Run Code Online (Sandbox Code Playgroud)

[e.get() for e in namR]然后将是list所有条目内容的a。