我正在使用Gtk 2.0。
我正在尝试更改标签的文字颜色/字体颜色。
它有多难?我只是尝试像gtk_widget_modify_text等一样无济于事。我想通过添加一个包含所有样式的简单资源文件来“android”或“Qt”方式。应该在哪里和什么(.rc?)添加此文件?如何解析这个文件?
我已经用很多小部件编写了我的应用程序,我不想更改/重做它们。有人能告诉我一个简单的例子吗?
我甚至尝试过来自网络的Pango示例,但问题是我的标签中的文字不断变化,因此我无法遵循这一点。 请帮忙。这是我到目前为止所尝试过的,但没有成功。
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);
答案 0 :(得分:2)
从我的角度来看,在这种情况下你可以使用GTK资源文件(rc文件)。
您可以使用gtk_rc_parse函数加载您的rc文件。
void gtk_rc_parse(const gchar *filename);