Cambiar el color del texto de la etiqueta en GTK en C

Estoy usando GTK 2.0.

Estoy tratando de cambiar el color del texto/color de fuente de la etiqueta.

¿Qué tan difícil puede ser? Solo estoy intentando cosas como gtk_widget_modify_text, etc. sin éxito. Quiero ir a la forma de "android" o "Qt" agregando un archivo de recursos simple con todos los estilos. ¿Dónde y como qué (.rc?) Debo agregar este archivo? ¿Cómo analizar este archivo?

Ya escribí mi aplicación con muchos widgets y no quiero cambiarlos/rehacerlos todos. ¿Puede alguien mostrarme un ejemplo simple?

Incluso probé un ejemplo de Pango de la web, pero el problema es que el texto en mi etiqueta sigue cambiando y, por lo tanto, no pude seguir esto. Por favor ayuda. Esto es lo que he intentado hasta ahora y sin éxito.

    GtkWidget *label1;    
    label1= gtk_label_new(" ");
    gtk_box_pack_start (GTK_BOX(box1), label1,TRUE,TRUE, 0);

    GdkColor color;

    gdk_color_parse ("white", &color);


    gtk_widget_modify_text ( GTK_WIDGET(label1), GTK_STATE_NORMAL, &color);

    gchar *stringMarkupText = "<span foreground=\"white\">   <b>Bold</b></span>"; //white color and bold--> the length of this text is fixed by number of spaces. I need to call a function that would set this text on a g_signal_connect so do not want to fix spaces!!
    gchar *stringPlainText;

    PangoAttrList  *attrList;

    pango_parse_markup(stringMarkupText, -1, 0, &attrList, &stringPlainText, NULL, NULL);
    gtk_label_set_attributes(GTK_LABEL(label1), attrList);

preguntado el 22 de mayo de 12 a las 10:05

Parece que también tengo el mismo problema con el color de la fuente del botón de radio :( No hay gtk_radio_button_set_attributes... ¿qué hacer? -

1 Respuestas

Desde mi punto de vista, puede usar el archivo de recursos GTK (archivo rc) en este caso.

Puede usar la función gtk_rc_parse para cargar su archivo rc.

void gtk_rc_parse(const gchar *filename);

contestado el 22 de mayo de 12 a las 11:05

Ok, hice esto con un archivo rc. Sin embargo, tengo un problema. Si configuro el color de fondo de toda la ventana como negro, el botón dentro de la ventana no se puede cambiar a ningún otro color (permanece negro) a pesar de configurar el parámetro bg. ¿Cómo debo resolver esto? - user907810

@ user907810 puede intentar escribir su archivo rc de esta manera: style "style1"{bg[NORMAL] = {0.5,0.5,0.5} } style "style2"{ bg[NORMAL] = {0.7,0.5,0.2} } widget_class"GtkWindow*GtkButton"style"style1" widget_class"GtkWindow"style"style2" - fabregaszy

Hola fabregaszy, por favor echa un vistazo a esta publicación. stackoverflow.com/questions/10722708/… donde estoy tratando de trabajar con el archivo rc para el botón contenido en una tabla dentro de una ventana. Hay un problema aquí que no sé por qué no puedo cambiar las propiedades. Por favor ayuda. - user907810

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.