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__'),但我认为目标很明确。
请问有什么建议可以让这项工作成功吗?
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。