Установка шрифта NSTextView - PullRequest
0 голосов
/ 14 июня 2010

Я создаю подкласс NSTextView для установки шрифта по умолчанию:

PTNfoEditField.h

@interface PTNfoEditField : NSTextView {

}

@end

PTNfoEditField.m

@implementation PTNfoEditField

-(id)init {
    if(self = [super init]) {
        [[self textStorage] setFont:[NSFont fontWithName:@"Courier" size:10]];
    }

    return self;
}

@end

Однако это не работает, иЯ не знаю, как сделать это по-другому.Может кто-нибудь мне помочь?Спасибо.

Ответы [ 2 ]

6 голосов
/ 14 июня 2010

Инициализатор для представлений не init, а initWithFrame:. Кроме того, если ваш взгляд находится в кончике, вы также должны переопределить initWithCoder:. Не забудьте убедиться, что ваше представление на самом деле является PTNfoEditField, а не обычным NSTextView.

Кроме того, вы должны использовать [NSFont userFixedPitchFontOfSize:0.0] для установки шрифта. Вы не должны жестко кодировать ни имя шрифта (пользователь может предпочесть лучший моноширинный шрифт), ни размер шрифта (пользователю может быть трудно прочитать 10 пунктов, или его порог сглаживания установлен выше).

2 голосов
/ 14 июня 2010

Может быть, попробуйте setTypingAttributes: тоже.

...