2010-03-20 7 views
0

J'essaie, pour la première fois, de créer une interface graphique en Ruby en utilisant Tk. J'ai copié un extrait de code d'un des nombreux didacticiels Web et j'essaie de changer la police pour l'une des étiquettes, mais rien ne semble affecter la façon dont le texte est présenté.Impossible de changer la taille de la police en Tk

Voici le code:

require 'tk' 

root = TkRoot.new('title'=>'MCIS') 

defaultFont = TkFont.new("weight"=>'bold', "size"=>20) 

Lbl = TkLabel.new(root) do 
    text "Boooo" 
    borderwidth 5 
    font defaultFont 
    foreground "red" 
    relief  "groove" 
    grid('column'=>3, 'row'=>0) 
end 

Tk.mainloop() 

Je vois les effets de tous les paramètres de l'étiquette, mais pas la police. J'ai essayé de changer la taille, le poids, donner des noms de famille différents, ne laisser qu'un seul paramètre; rien ne fonctionne - la police reste par défaut comme elle était. Étonnamment, il ne signale aucune erreur, tout semble bien. Peut-être que c'est le problème des versions? Je lance ces:

  • Linux CentOS 5
  • Tk 8.4.13
  • Ruby 1.8.5
  • rubis tcltk 1.8.5

Aussi, ne sais pas si ce est important, je l'ai couru via Xming à partir de la machine WinXP.

Répondre

3

Lorsque j'ai exécuté le code ci-dessus, il fonctionne comme prévu sur mon bureau Linux avec un écran connecté. Si je devais deviner, je dirais que Xming a un support de police extrêmement limité, peut-être seulement fournir une poignée de polices bitmap (lire: non-scalable). Donc, je dirais que le code est correct et que le problème est lié à la configuration du serveur X.

+0

Vous avez tellement raison. J'aurais dû y penser moi-même. J'ai regardé dans les paramètres de Xming, mais je n'ai trouvé aucun indice là-bas. Je suppose que c'est sans espoir, mais peut-être avez-vous, par hasard, une idée de comment le faire fonctionner sur Xming aussi? – FireAphis

Questions connexes