我有这个tkinter GUI,我将条目窗口小部件的值附加在一个列表中,同样在另一个列表中输入选项菜单(选项)的值。 我正面临一个问题,因为当我删除我的一个小部件时,它的值也应该在相应的列表中删除,但它不会这样做。它的值仍然在列表中。 删除 - 我正在使用以下代码
self.number_row=self.number_row-1
oneList=list(self.listFrame.grid_slaves(row=int(self.number_row)))
for l in OneList:
l.grid_remove()
并附加 -
self.entry_domain=Entry(self.listFrame)
self.entry_domain.grid(column=3,row=int(self.number_row),columnspan=2,sticky="EW")
self.entries_domain.append(self.entry_domain)
我认为我在删除小部件时做错了
答案 0 :(得分:1)
当您致电grid_remove()
时,您无法删除小部件。您所做的就是将其从屏幕上移除。该对象仍然存在,这就是为什么你仍然可以调用get
方法。
销毁小部件的正确方法是调用destroy()
方法。但是,这仍然不会从列表中删除它。您必须使用del
(在调用destroy()
之后)明确删除该对象,或者明确地将其从列表中删除。