我有一个动态生成的tkinter条目字段列表。我需要抓取每个字段的内容,同时知道它所指的是什么。我尝试过添加类似"entry"+count = Entry(..)
的东西,但正如预期的那样,它不会像这样工作,而且尝试这样做确实是一个非常愚蠢的设计实践,所以我认为它需要以数组的形式出现,但似乎不知道如何用一个条目来实现这一点。在
rowNum = 0
items = []
def tableGen(name):
global rowNum
entry = Entry(win).grid(row=rowNum, column=0)
label = Label(win, text=name).grid(row=rowNum, column=1)
self.items[rowNum] = [entry, label] # Problem Area 1
rowNum += 1
def generate(): # Print each items value
for item in items:
print (item.get()) # Problem Area 2
# Generates Entrys and labels from file
e = ET.parse('file.xml').getroot()
for atype in e.findall('things'):
tableGen(atype.get('name'))
generateBtn = Button(root, text="Generate", command=generate).pack()
generate()
root.mainloop()
我已经将代码简化到可以看到我要做什么的最低限度。问题似乎不是放在表中的位置,就是尝试解析它们(问题是1&2)。我对python很陌生,不知道怎么做。在当前状态下,项目失败,并返回in tableGen self.items[rowNum] = [entry, label] Name Error: name 'self' is not defined
。在
我做错了吗?还有别的办法吗?在
解决方案
^{pr2}$
使用^{} 将项添加到列表末尾:
这将生成一个列表列表,因此您需要使用索引来访问每个项目的元素:
^{pr2}$相关问题 更多 >
编程相关推荐