使用Tkinter在python的选项菜单中添加一个分隔符

问题描述 投票:2回答:1

我有python Tkinter代码,我想在选项菜单中添加一个分隔符。我无法弄清楚该怎么做。

我在网上查了一下,但似乎没有人问过这个问题。

这是代码

from tkinter import *

root = Tk()
root.geometry("1430x840")

# here is where I have the option menu. I want the separator in-between the word symbols and trash

var1 = StringVar()

opt1 = OptionMenu(root, var1, 
       'Mockups', 
       'Assets', 
       'Symbols', 
       # here is where the separator should be
       'Trash')

opt1.pack(side=LEFT, anchor=W)
var1.set('')

root.mainloop()
python macos tkinter pycharm
1个回答
0
投票

我找到了比以前的答案更好的方法。

OptionMenu的下拉列表只是一个Tkinter Menu()类,它具有Menu()的所有功能。因此,您可以通过访问OptionMenu类中的Menu对象在OptionMenu中添加分隔符。

例:

Op = OptionMenu(root, var, 'First', 'Second', 'Third')
Op.pack()

Op['menu'].insert_separator(1)

更新代码:

from tkinter import *

root = Tk()
root.geometry("1430x840")
var1 = StringVar()

opt1 = OptionMenu(root, var1, 
                'Mockups', 
                'Assets', 
                'Symbols', 
                # here is where the separator should be
                'Trash')

opt1['menu'].insert_separator(3)

opt1.pack(side=LEFT, anchor=W)
var1.set('')

root.mainloop()
© www.soinside.com 2019 - 2024. All rights reserved.