Hello,
Comme l'indique le titre de la discussion je souhaite changer le style (au moins la couleur d'écriture) des libellés des messages que j'affiche dans une statusbar en fonction d'un état donné.
J'ai essayé beaucoup de solution mais pas moyen. J'ai bien placé ma statusbar dans un eventbox mais çà ne change rien.
L'idéal serait de pouvoir définir le style à afficher dans le fichier rc pour être le plus dynamique et évolutif possible.
Voici le code du fichier rc :
et voici un extrait du code qui serait intéressant de pouvoir appliquer :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 ##### Style des statusbar ##### style "statusbar" { bg[NORMAL] = "white" fg[NORMAL] = "black" fg[INSENSITIVE] = "red" } widget "*statusbar*" style "statusbar" style "statusbar_error" { bg[NORMAL] = "black" fg[NORMAL] = "red" } widget "*statusbar_error*" style "statusbar_error"
la seule solution qui passe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if(error) m_statusBar->set_name("statusbar_error"); m_statusBar->push("mon message");
J'ai aussi essayé des trucs du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if(error) m_statusBar->set_sensitive(false); //Affiche en rouge !!! m_statusBar->push("mon message");
Si vous avez une idée ou des explications je suis preneur, merci par avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Gdk::Color color; color.set_rgb(65535, 0, 0); m_eventboxStatusBar->modify_fg(Gtk::STATE_NORMAL, color); //modifie l'event box contenant la statusbar m_statusBar->push("mon message"); ou Gdk::Color color; color.set_rgb(65535, 0, 0); Glib::RefPtr<Gtk::Style> refStyle = Gtk::Style::create(); refStyle->set_fg(Gtk::STATE_NORMAL, color); m_eventboxStatusBar->set_style(refStyle); m_statusBar->push("mon message");
Partager