我正在编写一个 Tkinter 程序,到目前为止,它创建了一个带有菜单栏、文件菜单和单个项目的窗口。菜单创建成功,但是有两个项目,第一个是我没有指定的,其名称是“-----”。
如果我不添加一项,自发的仍然会添加。如果我指定tearoff=0,这种情况仍然会发生。
知道为什么会发生这种情况吗?
Windows 11、Python 3.12.2、Tkinter 和 Tcl 8.6。
import tkinter as tk
window = tk.Tk()
window.geometry("800x600")
menubar = tk.Menu(window)
window.config(menu=menubar)
fileMenu = tk.Menu(menubar)
fileMenu.add_command(
label="Exit",
command=window.destroy,
)
menubar.add_cascade(label="File", menu=fileMenu, underline=0)
window.mainloop()
这样就可以了。我想你把
tearoff=0
放在菜单栏中而不是 fileMenu
。
import tkinter as tk
window = tk.Tk()
window.geometry("800x600")
menubar = tk.Menu(window)
window.config(menu=menubar)
fileMenu = tk.Menu(menubar,tearoff=0)
fileMenu.add_command(
label="Exit",
command=window.destroy,
)
menubar.add_cascade(label="File", menu=fileMenu, underline=0)
window.mainloop()