在将其称为StackOverflow上任何现有帖子的副本之前,请阅读:
我有一个ttk.OptionMenu
小部件,似乎无法改变小部件中选项的样式。我应用的样式仅修改了所选条目的显示框,但是我对更改下拉菜单的字体样式感兴趣,以便它也与所选选项匹配。
import tkinter as tk
from tkinter import ttk
root=tk.Tk()
optList1 = [
"1",
"2",
"3"
]
var1 = tk.StringVar(root)
var1.set(optList1[0]) #first value default
someStyle=ttk.Style()
someStyle.configure('my.TMenubutton',font=('Futura',20))
optMenu1 = ttk.OptionMenu(root, var1, optList1[0], *optList1, style='my.TMenubutton')
optMenu1.pack()
root.mainloop()
我不确定为什么定义的样式不适用于显示的选项,对此我将不胜感激。我怀疑下拉菜单使用的是一些单独定义的字体样式,可能是系统字体设置。
答案 0 :(得分:0)
您必须使用以下方法单独配置下拉选项:
optMenu1['menu'].configure(font=('Futura',20))
代码如下:
import tkinter as tk
from tkinter import ttk
root=tk.Tk()
optList1 = [
"1",
"2",
"3"
]
var1 = tk.StringVar(root)
var1.set(optList1[0]) #first value default
someStyle=ttk.Style()
someStyle.configure('my.TMenubutton',font=('Futura',20))
optMenu1 = ttk.OptionMenu(root, var1, optList1[0], *optList1, style='my.TMenubutton')
optMenu1['menu'].configure(font=('Futura',20))#add this to your code it will change style for dropdownlist
optMenu1.pack()
root.mainloop()
答案 1 :(得分:-1)
尝试:
optMenu1['menu'].configure(font=('Futura',20))
stovfl,二月11(2019)在22:15