Вышеуказанные решения действительно разрешают вопрос вставленного в вопрос задающего, но я думаю, что спрашивающий, вероятно, хотел большего.По крайней мере, я это сделал, когда пришел сюда.
Я просто хочу, чтобы все символы в моем текстовом поле всегда имели одинаковый шрифт , независимо от того, вставлены ли они программно, из пера,вклеил, втянул, набрал или заглянул Санта-Клаусом.Я искал переполнение стека для этой более широкой проблемы, но не нашел никаких вопросов (или ответов).
Вместо решений, приведенных здесь, использует эту идею .Подробно, дайте текстовое поле делегату, который реализует это ...
- (void)textViewDidChangeSelection:(NSNotification *)note {
NSTextView* textView = [note object] ;
[textView setFont:[self fontIWant]] ;
}
Готово.Это работает для всех крайних случаев, о которых я мог подумать, чтобы проверить.Немного странно наблюдать за изменением выбора для этого.Похоже, наблюдение строкового значения текстового объекта представления или регистрация для NSTextDidChangeNotification, было бы более логичным, но, поскольку у меня уже был настроен делегат, и поскольку вышеизложенное было проверено и получило одобрение Ника Цицмана, я пошелс этим.