Apr-04-2020, 11:46 AM
Why not keep a handle to the menus?
from tkinter import * class MyProgram: def __init__(self): self.tk = Tk() self.menu = Menu(self.tk) self.tk.config(menu=self.menu) self.main_menu = Menu(self.menu, tearoff=0) self.main_menu .add_command(label="StartScreen") self.main_menu .add_command(label="Settings") self.main_menu .add_command(label="Exit") self.menu.add_cascade(label="Main", menu=self.main_menu ) self.file_menu = Menu(self.menu, tearoff=0) self.file_menu.add_command(label="Open") self.file_menu.add_command(label="Save") self.file_menu.add_command(label="Print") self.menu.add_cascade(label="File", menu=self.file_menu) self.test_menu = Menu(self.menu, tearoff=0) self.test_menu.add_command(label="Test") self.menu.add_cascade(label="Test", menu=self.test_menu) demo = MyProgram() demo.file_menu.entryconfigure("Save", state=DISABLED) mainloop()