【发布时间】:2015-05-28 15:08:29
【问题描述】:
尝试搜索此内容,但找不到合适的答案。我知道我们可以执行以下操作在 tkinter 中为根窗口创建一个菜单
menu = Menu(root)
some_menu = Menu(menu, ....)
some_menu.add_command(label = some text, command = some command)
....
menu.add_cascade(label = some title, menu = some_menu)
root.config(menu = menu)
现在假设我们将 some_menu 传递给根配置,然后它将在菜单出现的 tkinter 窗口的顶部栏上水平显示级联菜单的选项/子项,我们可以通过创建子菜单以这种方式制作多个菜单这些选项的菜单,但这似乎有点令人费解。
话虽如此,有没有办法在彼此旁边创建多个菜单?我尝试像上面一样创建一个新菜单并将新菜单传递给 root.config
another_menu = Menu(root)
options = Menu(another_menu, ....)
options.add_command(label = some label, command = some command)
another_menu.add_cascade(label = some text, menu = options)
root.config(menu = another_menu)
然而,每当添加它并且不运行时,程序/脚本就会卡住我假设这是某种内存泄漏?这是有道理的,但我没有看到其他方法。
【问题讨论】:
-
您要创建多个菜单bar吗?你能写出最小的完整程序来说明程序“卡住”吗?这不是由于某种内存泄漏,而是由于没有看到实际代码,因此无法从您的描述中猜出。
-
是的,就像上面的第一个代码块一样,在菜单栏中彼此并排创建其他菜单,我不知道如何编写比提供的更小的代码示例,这是我可以提供的最简单的示例那会卡住。
-
最简单的代码包括导入和其他代码,做一个完整的运行示例。
标签: python class user-interface python-3.x tkinter