from tkinter import *
class myApp(Tk):
def changeFrame(self, classParam):
# if self.nowFrame:
# self.nowFrame.destory() # 이부분에서 에러가 발생합니다.
self.nowFrame = classParam
self.nowFrame.pack()
def __init__(self, root):
myMenu=Menu(root)
menu1=Menu(myMenu)
menu1.add_command(label="이전", command=lambda:self.changeFrame(frameClass_1()))
menu1.add_command(label="다음", command=lambda:self.changeFrame(frameClass_2()))
myMenu.add_cascade(label="프레임전환", menu=menu1)
root.config(menu=myMenu)
root.mainloop()
class frameClass_1(Frame):
def __init__(self):
super().__init__()
Label(self, text="frame1").pack()
class frameClass_2(Frame):
def __init__(self):
super().__init__()
Label(self, text="frame2").pack()
root = Tk()
myApp(root)
이전 메뉴를 선택하면 프레임 1로 전환하고,다음 메뉴를 선택하면 프레임 2로 전환하고자 합니다.
하지만, 메뉴를 선택하면, 아래의 에러가 뜹니다. 어떻게 해결해야 할까요?
[Previous line repeated 989 more times]
RecursionError: maximum recursion depth exceeded