在此链接上是生成条目网格的代码示例:
from tkinter import *
class Table:
def __init__(self,root):
# code for creating table
for i in range(total_rows):
for j in range(total_columns):
self.e = Entry(root, width=10, fg='blue',
font=('Arial',16,'bold'))
self.e.grid(row=i, column=j)
self.e.insert(END, lst[i][j])
# take the data
lst = [(1,'Raj','Mumbai',19),
(2,'Aaryan','Pune',18),
(3,'Vaishnavi','Mumbai',20),
(4,'Rachna','Mumbai',21),
(5,'Shubham','Delhi',21)]
# find total number of rows and
# columns in list
total_rows = len(lst)
total_columns = len(lst[0])
# create root window
root = Tk()
root.geometry("800x600")
t = Table(root)
root.mainloop()
这是输出:
我想更新第一行第二列。我怎么做?我知道一旦我命名了一个条目,我就可以使用以下代码:
self.e.delete(0, END)
self.e.insert(0, "update string")
但是由于我使用了网格,我不知道如何从该网格中识别一个特定的条目。
谢谢。
您可以使用函数
root.winfo_children()
循环遍历网格的子项(即根),该函数将包含框架子项的列表。或者,您可以手动创建一个多维数组,类似于您创建的 lst
列表,然后循环遍历它!