0

所以我基本上是在做以下事情,我希望 SomeText 有红色的前景颜色。如何实现这一点:

GtkWidget *menu_item =gtk_menu_item_new_with_labelex("SomeText");

我正在使用 GDK 2.0

谢谢

4

1 回答 1

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);
于 2009-07-16T20:44:38.637 回答