如何使OptionMenu保持相同的宽度?

时间:2011-04-12 02:27:51

标签: python tkinter optionmenu

我有一个片段,可以创建一个OptionMenu小部件。

...
options = ('White', 'Grey', 'Black', 'Red', 'Orange', 
           'Yellow', 'Green', 'Blue', 'Cyan', 'Purple')
var = StringVar()
optionmenu = OptionMenu(par, var, *options)
optionmenu.grid(column=column, row=row)
...

我遇到的一个问题是,每次选择新选项时,窗口小部件的宽度都会发生变化。我相信这是由于小部件中的文本更改宽度。如何使小部件保持一致的宽度?

3 个答案:

答案 0 :(得分:21)

据我所知,您可以使用optionmenu.config(width=<YOUR_WIDTH>),如下所示:

...
optionmenu = OptionMenu(par, var, *options)
optionmenu.config(width=<YOUR_WIDTH>)
optionmenu.grid(column=column, row=row)
...

答案 1 :(得分:13)

当您使用grid命令将窗口小部件放置在其父窗口中时,让窗口小部件填充其单元格(尝试sticky="ew"

答案 2 :(得分:0)

optionmenu.configure(width=<YOUR_WIDTH_HERE>)