Tkinter 菜单自发添加额外项目

问题描述 投票:0回答:1

我正在编写一个 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()
python tkinter
1个回答
0
投票

这样就可以了。我想你把

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()
© www.soinside.com 2019 - 2024. All rights reserved.