2010-05-27 13 views
2

J'essaie de créer un simple bloc-notes en Java.Pourquoi TextArea ne retournera-t-il pas au format non-gras, ou Font.PLAIN est-il juste comme un "add-on"?

C'est le code que je pense contient le problème:

if(cb.getSelectedItem().equals("Plain")){ 
     MainText.setFont(new Font(getFontName(MainText), 
            Font.PLAIN, 
            getFontSize(MainText))); 
} 

Voici les méthodes utilisées ci-dessus:

public int getFontSize(TextArea t){ 
    return t.getFont().getSize(); 
} 

public String getFontName(TextArea t){ 
    return t.getFont().getFontName(); 
} 

public int getFontStyle(TextArea t){ 
    return t.getFont().getStyle(); 
} 

Répondre

1

Réglage de la Font la façon dont vous avez est tout à fait bien. Vous pouvez aussi le faire comme ceci:

MainText.setFont(MainText.getFont().deriveFont(Font.PLAIN)); 

Comme le code Font est très bien, vous devez vous assurer que votre test cb.getSelecedItem fonctionne comme prévu. Il serait peut-être bon de passer à travers ou d'inclure certaines instructions de débogage. Notez également qu'en Java, il est conventionnel de commencer les noms de variables avec des lettres minuscules. Upper est utilisé pour commencer les noms de classe.

+0

Merci, vous m'aidez toujours autant quand je suis coincé, j'apprécie vraiment votre aide, je vais essayer cela maintenant. Oui, je sais ce que la convention est pour nommer les variables, mais parfois, quand je suis pressé, je ne suis pas tout à fait le suivre, quand le programme est terminé, je vais faire un peu de nettoyage de code. Merci. –

+0

aussi je pense que vous vouliez dire MainText.getFont(). DeriveFont (Font.PLAIN), merci. –

+0

c'est vrai, je voulais dire utiliser 'getFont()' au milieu. actualisé. – akf