首先我只尝试使用过:
missed_list_combobox.config(foreground="red")
然后我正尝试设置新样式:
style_missed_combobox = tkinter.ttk.Style()
style_missed_combobox.configure("Red.TCombobox", foreground="red")
并在创建组合框窗口小部件后使用它。
missed_list_combobox = tkinter.ttk.Combobox(frame4, state="readonly", width=32, style="Red.TCombobox")
missed_list_combobox.grid(row=2, column=3, padx=2, sticky="w", pady=3)
但是同样...它只是更改组合框中顶部元素的颜色... 不是整个下拉菜单元素... 我如何更改所有下拉元素的颜色文本??
预先感谢, 埃里兰
答案 0 :(得分:0)
据我所知,这是tkinter不可能直接实现的,因为我们无法通过python接口访问组合框的列表框。 但是,可以使用下面的tcl解释器完成此操作:
missed_list_combobox.tk.eval('[ttk::combobox::PopdownWindow %s].f.l configure -foreground red' % missed_list_combobox)
如果您还想将背景更改为黄色,只需将-background yellow
添加到上述tcl命令中即可。
顺便说一句,如果要更改所有组合框的下拉列表框的默认前景,则可以使用
root.option_add('*TCombobox*Listbox.foreground' % frame, 'red')
但这仅适用于在此行之后创建的组合框({root
可以被任何小部件替换)