我有一个框架和一个创建列表框的函数。当我按下一个按钮时,我想隐藏框架并创建一个新框架,并且在这个框架上我还想使用 create_listbox 函数。隐藏框架并创建新框架非常有效。但是,当我尝试在 2:nd 框架上创建列表框时,窗口会变得疯狂并不断调整大小。这是该程序的简化版本。
class App(Frame):
def __init__(self, master):
Frame.__init__(self, master)
self.grid()
self.f1 = Frame(self.master)
self.f1.pack()
self.f2 = Frame(self.f1)
self.f2.grid()
self.create_listbox(self.f1)
def create_listbox(aframe):
self.listbox = Listbox(aframe)
self.listbox.pack()
def hide_f2:
self.f2.grid_forget()
self.f3 = Frame(self.f1)
self.create_listbox(self.f1)
首先我认为这可能是因为列表框对象同时属于 f2 和 f3,因此无法决定它应该隐藏还是可见,但现在我不确定了:(