如何使用 tkinter 创建菜单栏?



这是我的第一篇文章,所以如果需要,请提供反馈以改进。

我正在按照tkdocs上的tkinter教程来学习tkinter。当前课程试图教我如何创建菜单,但是每当我运行他们的脚本时,都会弹出一个单独的窗口,而不是附加根窗口的菜单。

from tkinter import *
from tkinter import ttk

root = Tk()
root.option_add('*tearOff', FALSE)
win = Toplevel(root)
menubar = Menu(win)
win['menu'] = menubar
root.mainloop()

这将作为第二个窗口弹出。我不确定我只是不理解材料,还是我做错了什么。这些课程是在你至少使用 python 3 和 tkinter 8.6 的心态下编写的。我有当前的 Anaconda 发行版,它满足这两个要求。

我错误地让此代码打开一个单独的窗口而不是附加到窗口的菜单?

我能够找出问题。我误读了教程,并期望打开一个带有菜单栏和该菜单栏中几个选项的窗口。在弄乱代码之后,我能够编写一个脚本来创建我最初认为我们将要打开的窗口。最终,我没有意识到"顶级"会打开一个单独的窗口,所以那是在我身上。下面是我用来打开带有菜单栏的窗口的代码。

from tkinter import *
from tkinter import ttk
root = Tk()
root.option_add('*tearOff', FALSE)

menubar = Menu(root)
menu_file = Menu(menubar)
menu_edit = Menu(menubar)
menubar.add_cascade(menu=menu_file, label='File')
menubar.add_cascade(menu=menu_edit, label='Edit')
root['menu'] = menubar
root.mainloop()

谢谢,我希望这有助于其他人了解如果他们也在学习 tkinter 会发生什么。

最新更新