【发布时间】:2010-10-30 10:33:04
【问题描述】:
如何将菜单栏按钮放在菜单栏的左侧?现在我用 side=LEFT 打包()它们,但它们仍然在中间。这是我的菜单栏的代码:http://pastebin.com/bgncELcb
【问题讨论】:
标签: python user-interface tkinter
如何将菜单栏按钮放在菜单栏的左侧?现在我用 side=LEFT 打包()它们,但它们仍然在中间。这是我的菜单栏的代码:http://pastebin.com/bgncELcb
【问题讨论】:
标签: python user-interface tkinter
我建议不要创建 a) 带有框架和菜单按钮的菜单栏,以及 b) 在非标准位置创建菜单。如果您对可用性感兴趣,您应该使用顶层窗口的menu 选项。但是,由于您特别询问了框架中间的菜单按钮...
如果您想要正好在中间的东西,您可以做的一件事就是将您的菜单分成三个部分,左侧、中间和右侧。将这三个子框架放在“菜单栏”框架内。使用网格给左右部分最多weight(并且彼此相等,所以中间留在中间)。然后,您可以在中间框架中打包一个或多个按钮,它们将保留在中间。
另一种选择是使用place,并将相对X位置设置为0.5,将锚点设置为“n”。这可能是最简单的,但如果由于用户调整了窗口大小而导致按钮不完全适合,您可能会遇到重叠按钮的问题。
您选择的选项 -- pack -- 是最难采取的方法。包装的本质是沿着边缘包装东西。同样,您可以使用三个子帧,但 pack 不是这里的自然选择。
我的建议:重新考虑为什么要使用非标准菜单栏。使用真正的菜单栏,左侧有菜单按钮,就像世界上 99.9% 的其他应用程序一样。您的用户会感谢您的。
【讨论】:
menubar.pack(side=LEFT) 给你什么? 你也可以试试 menubar.pack() 吗?
【讨论】: