2009-12-04 3 views
15

Comment définir la police par défaut d'un composant NSTextView? Je dois avoir une zone dans mon application où les utilisateurs peuvent apporter des modifications à un fichier texte brut, et je voudrais que la police soit une police à espacement fixe.Définition des polices par défaut dans NSTextView

Répondre

24

Trouvé. This answer était proche, mais ne serait pas le faire - devait accéder à l'objet textStorage du NSTextView premier:

[[myNSTextView textStorage] setFont:[NSFont fontWithName:@"Menlo" size:11]]; 
+4

De la documentation NSText (superclasse de NSTextView): « Définit la police de tout le texte du récepteur à aFont "Si cela n'a pas fonctionné pour vous, vous devriez vous demander pourquoi. –

+3

En outre, vous devez utiliser la police et la taille de police à hauteur fixe préférées de l'utilisateur, et non une police et une taille codées en dur. http://developer.apple.com/mac/library/documentation/Cocoa/Reference/ApplicationKit/Classes/NSFont_Class/Reference/Reference.html#//apple_ref/occ/clm/NSFont/userFixedPitchFontOfSize: –

+0

Également avec cette réponse, mon stockage de texte semblait arrêter d'autoriser les caractères Unicode. Tels que '안녕하세요!'. Au lieu de cela mon NSTextView affiche '!'. – Kyle

14
 
NSFont* font = <whatever>; 
[textView setFont: font]; 
Questions connexes