编辑:操作系统是 Windows 10 64 位
好的,所以我已经在谷歌上搜索了我的后端。我正在构建一个简单的 tkinter 应用程序,在设置它后,通常只是乱七八糟地添加选项,我从创建的菜单中的下拉菜单不会限制在框架内。
import tkinter as tk
class Window(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.main_window()
self.widgets()
# All main window parameters go here
def main_window(self):
self.master.title("Calculate Commission")
self.master.geometry("800x600")
self.pack()
def widgets(self):
main_menu = tk.Menu(self.master, tearoff=0)
self.master.config(menu=main_menu)
# Create File Menu and Drop Down
file = tk.Menu(main_menu, tearoff=0)
file.add_command(label="Save")
file.add_command(label="Exit", command=exit)
main_menu.add_cascade(label="File", menu=file)
# Create Edit Menu and Drop Down
edit = tk.Menu(main_menu, tearoff=0)
edit.add_command(label="undo")
main_menu.add_cascade(label="Edit", menu=edit)
main = tk.Tk()
comm_prog = Window(master=main)
main.mainloop()
我相当有信心这可能会以两种方式结束。这要么是我在某个地方犯的菜鸟错误,要么是它依赖于系统,并且由于某种原因仅特定于我的计算机。如果有人有任何见解,我将不胜感激。
最佳答案
你的代码没有任何问题。此行为取决于系统。菜单由操作系统控制,而不是 OSX 和 Windows 上的 tkinter。
关于python - 在 Python 3.6 和 tkinter 中创建菜单时,下拉菜单不会保留在 Frame 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43146550/