如何更改ttk.OptionMenu的字体?

时间:2018-10-05 12:22:20

标签: python tkinter ttk optionmenu

我无法更改ttk.OptionMenu的字体。我尝试使用样式,但是没有用:

...
style = ttk.Style()
style.configure('my.TOptionMenu', font=('Arial', 30, 'bold'))
...
self.option_menu = ttk.OptionMenu(self.dict_frame, self.option_menu_variable, *[None],style='my.TOptionMenu')
self.option_menu.pack(side='left')
...
error:
self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))
_tkinter.TclError: Layout TOptionMenu not found

1 个答案:

答案 0 :(得分:1)

我相信ttk.OptionMenu使用TMenubutton样式:

opt_menu = ttk.OptionMenu(root, tk.StringVar())

opt_menu.winfo_class()

# 'TMenubutton'

当您引用TOptionMenu样式时,tkinter无法引用它,并给您带来错误。鉴于此,只需将您的style更改为:

style = ttk.Style()
style.configure('my.TMenubutton', font=('Arial', 30, 'bold'))
...
self.option_menu = ttk.OptionMenu(self.dict_frame, self.option_menu_variable, *[None],style='my.TMenubutton')
self.option_menu.pack(side='left')

现在应该可以了。

相关问题