Contenu | Rechercher | Menus

Annonce

L'équipe des administrateurs et modérateurs du forum vous invite à prendre connaissance des nouvelles règles.
En cas de besoin, vous pouvez intervenir dans cette discussion.

Ubuntu 18.04 LTS
Ubuntu-fr propose des clés USB de Ubuntu et toutes ses « saveurs » ainsi qu'un magnifique t-shirt pour cette toute nouvelle version d'Ubuntu !

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/03/2010, à 11:43

Fake

[Autorésolu] GTK+ et police d'un label

Bonjour à tous, Après moult recherches et prises de tête avec la doc de GTK+ et Pango, je me décide à demander l'avis des experts...

Je cherche à faire un soft très simple, qui lira dans un fichier une liste de mots, les affichera un par un dans un label, et il faudra les recopier dans une zone de saisie.

Bref les mots à recopier s'affichent dans un label et j'aimerai bien qu'ils s'affichent plus gros que normal (la police par défaut est bien souvent autour des 9 ou 10...)

J'ai vu qu'on pouvait utiliser <span> mais ca m'obligerai à concaténer les balise et le mot à chaque fois.
Du coup je me suis dit que j'allais le faire avec des attributs de Pango et voila ce que j'ai fait :
   

GtkWidget *wordzone;
PangoAttrList *wordstyle;
PangoAttribute *wordsize;

/* Word to read zone */

wordzone = gtk_label_new("éssai de texte à afficher");
gtk_label_set_justify(GTK_LABEL(wordzone), GTK_JUSTIFY_CENTER);
gtk_label_set_selectable(GTK_LABEL(wordzone), FALSE);
wordstyle = pango_attr_list_new();
pango_attr_list_unref(wordstyle);
wordsize = pango_attr_size_new_absolute(20);
pango_attr_list_insert(wordstyle, wordsize);
gtk_label_set_attributes(GTK_LABEL(wordzone), wordstyle);
gtk_box_pack_start(GTK_BOX(vbox), wordzone, FALSE, TRUE, 10);

Ça compile sans erreur mais le label ne s'affiche plus alors que sans les bidouilles de Pango ca marche.

Dernière modification par Fake (Le 15/03/2010, à 12:23)

Hors ligne

#2 Le 15/03/2010, à 12:22

Fake

Re : [Autorésolu] GTK+ et police d'un label

En fait j'ai trouvé :

GtkWidget *wordzone;
PangoFontDescription *wordstyle;

/* Word to read zone */

wordzone = gtk_label_new("éssai de texte à afficher");
gtk_label_set_justify(GTK_LABEL(wordzone), GTK_JUSTIFY_CENTER);
gtk_label_set_selectable(GTK_LABEL(wordzone), FALSE);
wordstyle = pango_font_description_from_string("Sans Bold 20");
gtk_widget_modify_font(GTK_WIDGET(wordzone), wordstyle);
gtk_box_pack_start(GTK_BOX(vbox), wordzone, FALSE, TRUE, 10);

Et cela fait l'affaire ...

Hors ligne