我在tkinter框架中有一个网格,用于显示查询结果。其中有一个日期字段需要手动更改,然后将该日期作为查询结果的参数。每次更改日期,显然结果会有所变化并且给出不同数量的行。问题是,如果第二次执行时获得的行数少于第一次,则仍将保留第一次查询结果下面的结果,这会非常困惑。
我的问题是,如何从框架中删除所有行号大于6(无论里面有什么)的行?
顺便说一句,我正在运行Python 3.3.3。谢谢!
我在tkinter框架中有一个网格,用于显示查询结果。其中有一个日期字段需要手动更改,然后将该日期作为查询结果的参数。每次更改日期,显然结果会有所变化并且给出不同数量的行。问题是,如果第二次执行时获得的行数少于第一次,则仍将保留第一次查询结果下面的结果,这会非常困惑。
我的问题是,如何从框架中删除所有行号大于6(无论里面有什么)的行?
顺便说一句,我正在运行Python 3.3.3。谢谢!
调用方法grid_forget
将从窗口中删除该小部件 -
此示例使用在父级上调用grid_slaves
来查找映射到网格的所有小部件,
然后使用grid_info
调用了解每个小部件的位置:
>>> import tkinter
# create:
>>> a = tkinter.Tk()
>>> for i in range(10):
... label = tkinter.Label(a, text=str(i))
... label.grid(column=0, row=i)
# remove from screen:
>>> for label in a.grid_slaves():
... if int(label.grid_info()["row"]) > 6:
... label.grid_forget()