Вопрос

Итак, я в основном делаю следующее и хочу, чтобы SomeText имел красный цвет переднего плана.Как этого добиться:

GtkWidget *menu_item =gtk_menu_item_new_with_labelex("SomeText");

Я использую GDK 2.0.

Спасибо

Это было полезно?

Решение

Помните, что GtkMenuItem — это GtkBin, содержащий GtkAccelLabel.Итак, все, что вам нужно сделать, это вставить собственный 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