IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

changer la couleur de fond d'une HBox


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut changer la couleur de fond d'une HBox
    bonjour à tous ,

    j'ai un prog GTK 2,0 dans lequel j'ai plein de Hbox et Vbox imbriquées, mais j'ai une Box nommée HBox3 (pas très original), qui contient deux choses ; à gauche un GtkImage nommée AppsCategorieHeaderIcon avec une icone PNG avec canal alpha (donc transparente logiquement) et a droite un label nommé AppsCategorieHeaderLabel avec un peu de text. le pb est que les deux controles dans la HBox3 sont su fond gris mais je veux qu'ils soient sur fond Blanc, et je n'arrive pas a changer leur couleur de fond.
    si ca peut vous aider, la HBox3 est dans la premiere case d'une VBox2 qui a deux cases.

    voila j'espere que quelqu'un pourra me secourir

    merci d'avance

    ps : j'ai déja regardé dans la FAQ mais la méthode gtk_modify_bg n'a pas fonctionné

    et je ne sais pas comment appliquer la méthode de secours (avce la eventbox)

    a+

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    je poste le morceau de code dans lequel j'ai essayé de mettre juste l'icone dans l'eventbox et l'event box dans la HBox3, (j'ai essayé aussi de mettre le label, ou meme la HBox3 mais ca changait rien : toujours un fond gris)


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    HBox3 = gtk_hbox_new(FALSE,0);
    gtk_box_pack_start(GTK_BOX(VBox2),HBox3,FALSE,TRUE,0);;
     
    AppsCategorieHeaderIcon = gtk_image_new();
    gtk_image_set_from_icon_name (GTK_IMAGE(AppsCategorieHeaderIcon), "bookmark",2);
    GtkWidget *MyEventBox1;
    MyEventBox1 = gtk_event_box_new();
    gtk_event_box_set_visible_window(GTK_EVENT_BOX(MyEventBox1),TRUE);
    gtk_event_box_set_above_child(GTK_EVENT_BOX(MyEventBox1),TRUE);
    GdkColor color;
    gdk_color_parse ("white", &color);
    gtk_widget_modify_fg (MyEventBox1, GTK_STATE_NORMAL, &color);
    gtk_container_add(GTK_CONTAINER(MyEventBox1), AppsCategorieHeaderIcon);
    gtk_box_pack_start(GTK_BOX(HBox3),MyEventBox1,FALSE,TRUE,2);
     
    	AppsCategorieHeaderLabel = gtk_label_new("label");
    	gtk_label_set_markup(GTK_LABEL(AppsCategorieHeaderLabel), "<span background=\"#FFFFFF\">Mes applications préférées :</span>");
    	gtk_box_pack_start(GTK_BOX(HBox3),AppsCategorieHeaderLabel,FALSE,TRUE,2);
    	/*FIXME: il faut mettre HBox en fond blanc mais pas possible*/
    help me plizzze

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    au fait j'ai oublié de préciser :

    configuration :

    GTK-2.0
    GCC
    IDE Geany 0.14
    Ubuntu 8.04.1
    Theme GTK système : un theme GTK_engine_pixmaps (je sais pas si ca joue)

    EDIT: ca joue pas , j'ai mis d'autre themes et ca le fait quand meme

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 108
    Par défaut
    Vous créez des GtkEventBox comme parents directs des Labels, puis appliquez le gtk_widget_modify_bg sur ces GtkEventBox.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    merci beaucoup

    mais c'est ce que j'ai vu dans la FAQ mais je n'ai pas reussi à le faire

    je ne sais pas comment faire 'parent direct", parce que j'ai essayéde jouer avec les proprietes et add_container mais ca change rien

    quel serait le code a utiliser ?
    merci encore

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 108
    Par défaut
    Je ne sais pas si vous voulez colorer le fond à l'intérieur ou à l'extérieur de vos labels . Selon votre code, cela doit marcher, à mon avis, pour colorer l'intérieur. En revanche, si vous voulez colorer le fond à l'extérieur des labels, vous devriez ajouter autres choses : parent des labels. Par exemle des conteneurs de décoration comme GtkFrame, ...que vous pouvez colorer comme vous voulez. Sinon, je ne pense pas que vous puissiez colorer les conteneurs du type d'arrangement (layout): HBox, ... comme vous le faites avec votre code. Il est vrai que la gestion des couleurs de gtk, selon mon avis, n'est pas très limpide.

Discussions similaires

  1. Changer la couleur de fond d'une fenetre
    Par Premium dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 10/12/2006, 14h52
  2. Réponses: 3
    Dernier message: 01/06/2006, 09h49
  3. Réponses: 3
    Dernier message: 28/02/2006, 15h39
  4. changer la couleur de fond d'une dialogue
    Par PRUVOT dans le forum MFC
    Réponses: 1
    Dernier message: 27/10/2005, 11h50
  5. Comment changer la couleur de fond d'une ligne du TRichEdit
    Par tibi666 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 28/09/2005, 17h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo