为什么 Menubutton 在此代码中不起作用?

Why are Menubutton not working in this code?

Tkinter GUI - Menubutton 中找到了一种相当有趣的创建菜单的方法。但不幸的是,这段代码不起作用(或者更确切地说,当您单击 Menubutton 时,绑定的菜单不会打开):

import tkinter as tk
from tkinter import ttk

root = tk.Tk()

root.option_add("*Menu.borderWidth", "0")
root.option_add("*Menu.activeBorderWidth", "0")
root.option_add("*Menu.background", "black")


style = ttk.Style(root)


menu = tk.Menu(root)

btn_menu = ttk.Menubutton(root, text='fegvd')
btn_menu.pack()

file = tk.Menu(btn_menu, tearoff=0, foreground='white')
file.add_command(label='ГЫГ')

style.configure('TMenubutton', background='black', foreground='white', indicatoron=0, menu=file, direction='delow', state='active')

root.mainloop()

不过,如果我不使用 ttk.Menubutton,而是使用 tk.Menubutton,那么一切正常:

import tkinter as tk
from tkinter import ttk

root = tk.Tk()

root.option_add("*Menu.borderWidth", "0")
root.option_add("*Menu.activeBorderWidth", "0")
root.option_add("*Menu.background", "black")


menu = tk.Menu(root)

btn_menu = tk.Menubutton(root, text='fegvd')
btn_menu.pack()


file = tk.Menu(btn_menu, tearoff=0, foreground='white')
file.add_command(label='ГЫГ')

btn_menu.configure(background='black', foreground='white', indicator=0, menu=file, state='active')

root.mainloop()

为什么?请告诉我,问题是什么?

您不能使用样式将菜单与菜单按钮相关联。您需要像使用 tk 菜单一样进行操作:

btn_menu.configure(menu=file)