我是一个开始(强调)程序员,我正在创建一个研究GUI应用程序。我想为术语和定义创建多个Entry字段。要创建一个条目框,代码(我相信)将是:
term = StringVar()
term1 = Entry(root, textvariable = term)
term1.grid(row=1, column=1)
我的目标是能够提示用户询问他们想要多少个词。我的问题是我必须运行什么循环来自动创建一列输入字段,具体到用户输入的数字?
答案 0 :(得分:1)
假设您已获得用户输入x
,即整数。
for i in range(x):
Entry(root, textvariable=StringVar()).grid(row=1, column=i+1)
但遗憾的是,你无法获得条目的价值。所以我们可以拿两个清单。
variables = []
entries = []
for i in range(x):
va = StringVar()
en = Entry(root, textvariable=va)
en.grid(row=1, column=i+1)
variables.append(va)
entries.append(en)
在这种情况下,您可以使用列表访问条目和变量。
然后,您可能需要循环内的名称,例如entry1, entry2, entry3
。这涉及无法在Python中访问的动态变量创建。有一种使用exec
或__dict__
的黑客方式,但不建议这样做。只需使用列表或词典。