Создание submenu со своим меню в Tkinter

Как сделать (если возможно) подменю с еще одним подменю?

введите сюда описание изображения

т.е. мне нужно чтобы при наведении мышкой на подменю ("Open", "Save", "Save as", "Exit") выпадало меню ("Tk1", "Tk2", "Tk3", "Tk4") вправо.


Ответы (1 шт):

Автор решения: S. Nick

Пожалуйста предоставляйте минимально-воспроизводимый пример, который демонстрирует проблему. Как вариант, это может выглядеть так:

from tkinter import Tk, Frame, Menu

class Example(Frame):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.master.title("Добавляем подменю")

        menubar = Menu(self.master)
        self.master.config(menu=menubar)

        fileMenu = Menu(menubar)

        submenu = Menu(fileMenu)
        submenu.add_command(label="Tk1")
        submenu.add_command(label="Tk2")
        submenu.add_command(label="Tk3")
        submenu.add_command(label="Tk4")
        fileMenu.add_cascade(label='Open', menu=submenu, underline=0)
        fileMenu.add_cascade(label='Save', menu=submenu, underline=0)

        fileMenu.add_separator()

        fileMenu.add_command(label="Выход", underline=0, command=self.onExit)
        menubar.add_cascade(label="Файл", underline=0, menu=fileMenu)

    def onExit(self):
        self.quit()


def main():
    root = Tk()
    root.geometry("250x150+300+300")
    app = Example()
    root.mainloop()

if __name__ == '__main__':
    main()

введите сюда описание изображения

→ Ссылка