所以我基本上是做以下,我想SomeText有红色forground颜色。如何实现这一点:

GtkWidget *menu_item =gtk_menu_item_new_with_labelex("SomeText");

我使用GDK 2.0

由于

有帮助吗?

解决方案

记住GtkMenuItem是包含GtkAccelLabel一个GtkBin。因此,所有你需要做的就是坚持一个自定义GtkAccelLabel到GtkBin,让您的标签监控GtkMenuItem的快捷键。

所以:

GtkWidget *menu_item, *accel_label;

accel_label = gtk_accel_label_new ("");
gtk_label_set_markup(GTK_LABEL (accel_label), "<span color=\"red\">This text will be RED!</span>");
menu_item = gtk_menu_item_new();
gtk_container_add(GTK_CONTAINER (menu_item), accel_label);
gtk_accel_label_set_accel_widget(GTK_ACCEL_LABEL(accel_label), menu_item);
gtk_widget_show(accel_label);
gtk_widget_show(menu_item);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top