2

我是一名初级(重点)程序员,我正在创建一个学习 GUI 应用程序。我想为术语和定义创建多个条目字段。要创建一个条目框,代码(我相信)将是:

term = StringVar()
term1 = Entry(root, textvariable = term)
term1.grid(row=1, column=1) 

我的目标是能够提示用户询问他们想要多少个术语。我的问题是我必须运行什么循环来自动创建一列输入字段,特定于用户输入的数字?

4

1 回答 1

2

假设你有用户输入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 中无法访问的动态变量创建有关。有一种使用execor的 hack 方式__dict__,但不推荐。只需使用列表或字典。

于 2013-07-12T07:00:51.877 回答