我目前正在 Tkinter 中创建文本框的“网格”,以模拟高尔夫记分卡系统。我目前正在使用下面的代码来创建这个网格。当我将这些文本框中的条目存储到 Microsoft Access 数据库中时,如果创建的小部件没有唯一名称,我如何使用 .get() 函数从各个文本框中检索值。我真的不想手动创建 105 个文本框,尽管我知道这样做可行。感谢您的帮助。
for x in range(1, 22):
for y in range(4, 9):
e = tk.Text(self,
height=1,
width=3)
e.grid(column=x,
row=y)
最佳答案
在这种情况下,我会使用字典,因为它允许您根据小部件的网格位置来引用它们。你可以这样做:
text_widgets = {}
for x in range(1, 22):
for y in range(4, 9):
e = tk.Text(self,
height=1,
width=3)
e.grid(column=x,
row=y)
text_widgets[(x, y)] = e
这允许您稍后按位置访问小部件 - 因此,如果您想要第 10 列第 7 行中的小部件的值,您可以使用以下方法访问它:
text_widgets[(10, 7)].get('1.0', 'end-1c')
关于python - 循环中的 Tkinter 名称小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43759189/