使用 TkInter 在 Python 中创建菜单时出错。我究竟做错了什么?
Error while creating a menu in Python using TkInter. What am I doing wrong?
我在 Python 中使用 Tkinter 创建菜单时遇到错误。我究竟做错了什么?我的代码和完整的错误回溯如下。
我的代码:
from tkinter import *
root = Tk()
root.title("FoodU")
root.geometry("1600x2560+0+0")
#main BEGIN
main = Frame(root, bg="light coral")
main.pack(fill=BOTH)
#main END
#navigation BEGIN
navigation = Frame(main, bg="floral white")
navigation.grid(padx=20)
nav = Menu(navigation)
navigation.config(menu=nav)
navcuisine = Menu(nav)
nav.add_casacde(label="Cuisines", menu=navcuisine)
navcuisine.add_command(label="Indian")
navcuisine.add_command(label="Chinese")
navcuisine.add_command(label="Japanese")
navcuisine.add_command(label="Italian")
navcuisine.add_command(label="Thai")
#navigation END
root.mainloop()
错误:
Traceback (most recent call last):
File <file path>, line 52, in <module>
navigation.config(menu=nav)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/__init__.py", line 1482, in configure
return self._configure('configure', cnf, kw)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/__init__.py", line 1473, in _configure
self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))
_tkinter.TclError: unknown option "-menu"
这个错误是什么意思?我做错了什么,我该如何解决?
非常感谢!!
navigation = Frame(main, bg="floral white")
navigation.grid(padx=20)
nav = Menu(navigation)
navigation.config(menu=nav)
这是个问题。框架对象不支持 menu
配置选项。据我所知,只有 Toplevel 小部件允许 menu
。一种可能的解决方案是将 nav
设为 root
的菜单。
nav = Menu(root)
root.config(menu=nav)
此外,nav.add_casacde(label="Cuisines", menu=navcuisine)
拼写错误 "cascade"。请尝试 nav.add_cascade(label="Cuisines", menu=navcuisine)
。
我在 Python 中使用 Tkinter 创建菜单时遇到错误。我究竟做错了什么?我的代码和完整的错误回溯如下。
我的代码:
from tkinter import *
root = Tk()
root.title("FoodU")
root.geometry("1600x2560+0+0")
#main BEGIN
main = Frame(root, bg="light coral")
main.pack(fill=BOTH)
#main END
#navigation BEGIN
navigation = Frame(main, bg="floral white")
navigation.grid(padx=20)
nav = Menu(navigation)
navigation.config(menu=nav)
navcuisine = Menu(nav)
nav.add_casacde(label="Cuisines", menu=navcuisine)
navcuisine.add_command(label="Indian")
navcuisine.add_command(label="Chinese")
navcuisine.add_command(label="Japanese")
navcuisine.add_command(label="Italian")
navcuisine.add_command(label="Thai")
#navigation END
root.mainloop()
错误:
Traceback (most recent call last):
File <file path>, line 52, in <module>
navigation.config(menu=nav)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/__init__.py", line 1482, in configure
return self._configure('configure', cnf, kw)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/__init__.py", line 1473, in _configure
self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))
_tkinter.TclError: unknown option "-menu"
这个错误是什么意思?我做错了什么,我该如何解决?
非常感谢!!
navigation = Frame(main, bg="floral white")
navigation.grid(padx=20)
nav = Menu(navigation)
navigation.config(menu=nav)
这是个问题。框架对象不支持 menu
配置选项。据我所知,只有 Toplevel 小部件允许 menu
。一种可能的解决方案是将 nav
设为 root
的菜单。
nav = Menu(root)
root.config(menu=nav)
此外,nav.add_casacde(label="Cuisines", menu=navcuisine)
拼写错误 "cascade"。请尝试 nav.add_cascade(label="Cuisines", menu=navcuisine)
。