web-dev-qa-db-fra.com

Comment changer le fond de GtkWidget dans GTK3?

J'essaie d'utiliser override_background_color sur certains widgets GTK3, mais ils apparaissent toujours avec la couleur d'arrière-plan par défaut.

2
int_ua

GTK + 1.2

  GtkRcStyle *rc_style;
  GdkColor color;

  color.red = 65535;
  color.green = 0;
  color.blue = 0;

  rc_style = gtk_rc_style_new();

  rc_style->bg[GTK_STATE_NORMAL] = color;

  rc_style->color_flags[GTK_STATE_NORMAL] |= GTK_RC_BG;

  gtk_widget_modify_style (widget, rc_style);

  gtk_rc_style_unref (rc_style);

GTK + 2.24

Utilisation de la bibliothèque GDK :

GtkWidget *widget; //your widget

  GdkColor color; 

  gdk_color_parse ("red", &color); //setting a color - you can also use RGB

  gtk_widget_modify_bg(widget, GTK_STATE_NORMAL, &color); //modifying the background color of the widget

Vous trouverez une référence complète sur GdkColor à l’adresse suivante: Documentation de développement de GNOME .

GTK 3.0

Pour gtk + 3, vous pouvez utiliser gtk_css_provider (). Des tutoriels complets et des exemples sont disponibles sur le GTK + Forums .

4
dlin