Я хочу, чтобы мой ttk.treeview имел чередующиеся цвета

Я хочу, чтобы моя таблица ttl.treeview имела чередующийся узор цветов, и я пытался добавить теги и сделать фон каждой нечетной строки отличным, используя метод tag_configure, но мне это не удалось.

Каждая строка — это строка, взятая из таблицы БД, которую я хочу показать.

Я также пытался сделать это в небольшой отдельной программе, но это тоже не было эффективным.

def show(self, row, column, rowspan):
    self.row = row
    self.column = column
    self.rowspan = rowspan
    global FondoBase


    self.Tabla = ttk.Treeview(FondoBase, columns=self.Columnas[1:], height=40)

    self.Tabla.heading("#0", text=self.Columnas[0])
    for i in self.Columnas[1:]:
        self.Tabla.heading("{}".format(i), text = "{}".format(i))

    self.Tabla.grid(row=row, column=column, rowspan=rowspan, sticky = "e", pady=30)
    scrol = Scrollbar(FondoBase, command=self.Tabla.yview)

    self.Tabla.config(yscrollcommand=scrol.set)


    scrol.grid(row=row, column=column+1, sticky = "wns", rowspan=rowspan, pady=30)



    Conexion = connect('{}'.format(Directorio))

    with Conexion:

        Seleccion = Conexion.cursor()

        Seleccion.execute("""SELECT * FROM {}""".format(self.nombre))

        resultado = Seleccion.fetchall()


    for i in range(len(resultado)):
        if i%2 == 0:
        self.Tabla.insert("", i, text = "{}".format(resultado[i][0]), values=(resultado[i][1:]), tags=("par"))
            self.Tabla.tag_configure("par", background = "#00ffff")

        else:
            self.Tabla.insert("", i, text = "{}".format(resultado[i][0]), values=(resultado[i][1:]), tags=("impar"))

Я действительно не знаю, что происходит.

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
444
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

-какую версию python вы используете (python -V) в cmd

-последняя версия (3.7) Python, кажется, имеет ошибки для цветных тегов

-если вы используете последнюю версию, просто установите python 3.6

- один из ваших тегов не имеет цвета

self.Tabla.tag_configure("impar", background = "#ff008c")

Моя точная версия — Python 3.7.3. Это правда, что я обновляю ее, но у меня всегда была версия 3.7, и до обновления эта функция работала отлично, хотя у меня не было цвета для тега «impar» (это просто остался с дефолтным белым)

Aitor Cantero 30.05.2019 09:50

рад, что вы нашли это полезным!

Ali 31.05.2019 10:10

Другие вопросы по теме