@izma

Как задать цвет выпадающего списка в Tkinter Python?

Добрый день,
подскажите пожалуйста, что я делаю неправильно -
нужно задать цвет фона и шрифта выпадающего списка:
combo = ttk.Combobox(frame_1,
                     values=name_room,
                     height = 1,
                     width = 24,
                     font = ("Windows", 12),
                     background="red",
                     foreground="#375010"
                     )
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
trapwalker
@trapwalker
Программист, энтузиаст
В ttk.Combobox параметры background и foreground не работают напрямую. Необходимо использовать стили для настройки цветов. Вот как это можно сделать:

import tkinter as tk
from tkinter import ttk

root = tk.Tk()

style = ttk.Style()
style.theme_use('default')

style.configure("TCombobox",
                fieldbackground="red",  # Цвет фона выпадающего списка
                background="red",  # Цвет фона поля
                foreground="#375010",  # Цвет шрифта
                selectbackground="red",  # Цвет фона при выборе
                selectforeground="#375010"  # Цвет шрифта при выборе
                )

frame_1 = ttk.Frame(root)
frame_1.pack(padx=10, pady=10)

combo = ttk.Combobox(frame_1,
                     values=["Option 1", "Option 2", "Option 3"],
                     height=1,
                     width=24,
                     font=("Windows", 12),
                     style="TCombobox"
                     )
combo.pack()

root.mainloop()

Этот код настраивает цвет фона и шрифта для выпадающего списка. Обратите внимание на использование style.configure для настройки внешнего вида.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы