我尝试使用Python3中的类创建一个简单的菜单。我已尝试使用“其他菜单”创建初始菜单。按钮,然后一旦点击它将带我到另一个菜单'这是另一个菜单'按钮。
然而,它目前只在启动时显示两个菜单。
最终我想要一个12个按钮的初始菜单,然后重定向到其他菜单。我可以通过创建一个新窗口来做到这一点,但我宁愿将它保存在同一个窗口中。
我在下面做错了什么?
#import the tkinter module
from tkinter import *
#create a new class
class Try(Frame):
def __init__(self, master):
super(Try, self).__init__(master)
self.grid(row = 2, sticky = W+E+N+S)
#,padx=300
self.create_widgets()
def create_widgets(self):
#create buttons
self.bttn1 = Button(self, text = 'Other Menu')
self.bttn1['command'] = self.create_widgets2()
self.bttn1.grid(sticky = W+E+N+S)
def create_widgets2(self):
#create buttons
self.bttn2 = Button(self, text = 'This is the other menu')
self.bttn2.grid(sticky = W+E+N+S)
#main
root = Tk()
root.title('Editor')
root.geometry()
root.configure(background='black')
app = Try(root)
root.mainloop()
答案 0 :(得分:0)
当您指定按钮的create_widgets2
选项时,您正在create_widgets
方法中调用command
方法:
self.bttn1['command'] = self.create_widgets2()
# ^^
您需要删除括号,以便仅将command
选项分配给函数对象:
self.bttn1['command'] = self.create_widgets2