GTK + 3 altera a cor do texto em uma etiqueta (raspberry pi)

0

Sou novo no GTK + e passei 3 dias muito frustrantes tentando fazer algo aparentemente simples - mude a cor do texto em um rótulo rapidamente em tempo de execução. Eu tentei aplicar um estilo CSS, eu tentei dois métodos depreciados e nada disso funciona. Pode até ser feito, e se não, por que algo tão simples não está disponível?

Aplicar um estilo css na mosca funciona parcialmente: quando eu especificar

.pinkStyle {
    background-color: rgb(241, 135, 135);
    color: black;
}

em tempo de execução, posso ver o fundo ficar rosa. Mas o texto fica branco. Socorro!

    
por user15001 21.07.2018 / 04:03

1 resposta

1

Oh meu Deus. Estou documentando isso para que ninguém sofra como eu sofri.

Se você quiser controlar o tempo de execução do seu texto, não use, sob nenhuma circunstância, o Glade para definir a cor do primeiro plano com o recurso Editar atributos. Se você fizer isso, você definiu PERMANENTE a cor do texto de uma forma que nem as alterações de CSS, marcação de pango ou funções depreciadas como gtk_widget_modify_fg podem tocar em tempo de execução.

Você ainda pode usar o css para alterar a cor do plano de fundo do marcador, mas para obter a cor e o plano de fundo do texto, estou usando o gtk_label_set_markup com

<span background=\"#0022ff\" foreground=\"#ff0044\">

com sucesso. DEPOIS de excluir todos os atributos de todas as minhas etiquetas no Glade.

GTK é um pesadelo; Eu nunca conheci nada no Linux antes que isso me fizesse ansiar pelo Windows, mas isso aconteceu.

    
por 21.07.2018 / 04:13

Tags