Question

J'utilise GTK Sharp travailler sur une interface graphique pour mon application.

Jetez un oeil à ce morceau de code:

Pango.FontDescription fontdesc = new Pango.FontDescription();
fontdesc.Family = "Sans";
//fontdesc.Size = 12;
fontdesc.Weight = Pango.Weight.Semibold;
SyncInfo.ModifyFont(fontdesc);
Gdk.Color fontcolor = new Gdk.Color(255,255,255);
SyncInfo.ModifyFg(StateType.Normal, fontcolor);

Avis fontdesc.Size est commenté. Parce que quand je la mettre en commentaire, je vais voir l'étiquette avec le texte. Si je mets une valeur à lui, l'étiquette n'apparaît pas.

De plus, je l'ai fait un Console.WriteLine, et la taille par défaut est 0. J'ai donc essayé frontdesc.Size = 0, et il disparaît encore, une idée?

Merci!

Était-ce utile?

La solution

Vérifier cette sur. Vous devez le mettre à 12 * Scale.PangoScale. J'ai eu un problème similaire avec les API C.

Autres conseils

Ceci est essentiellement une version C # de l'autre réponse PangoScale:

Pango.FontDescription fontdesc = new Pango.FontDescription();
fontdesc.Size = Convert.ToInt32(12 * Pango.Scale.PangoScale);
....

Notes: FontDescription.Size est int et PangoScale est de type à double pour une distribution de type ou un autre double pour int conversion est nécessaire. Échelle est probablement ambigu dans les espaces de noms référencés, de sorte que le Pango.Scale de référence complète est probablement mieux utilisé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top