Создание объекта NSTextView программно

Время от времени Вы, возможно, должны собрать текстовую систему программно. Можно сделать это любым из двух способов: путем создания NSTextView объект и разрешение ему создать его сеть поддержки объектов или путем создания сети объектов самостоятельно. В большинстве случаев Вы сочтете достаточным создать NSTextView возразите и позвольте ему создать базовую сеть обрабатывающих текст объектов, как обсуждено в этой статье. Если Ваше приложение имеет сложные требования текстового расположения, необходимо будет создать сеть сами; см. “текстовые Системные объекты Создания” в текстовом Руководстве по архитектуре Какао для получения информации.

Вы создаете NSTextView возразите программно обычным способом: путем отправки alloc и init... сообщения. Можно также создать NSTextView объект с помощью любого из этих методов:

Метод, берущий один параметр, initWithFrame:, самый простой способ получить NSTextView объект — это создает все другие компоненты текстовой системы для Вас. Если Вы используете метод, берущий два параметра, initWithFrame:textContainer:, необходимо создать другие компоненты сами.

Перечисление 1 показывает, как можно создать NSTextView объект, данный NSWindow объект, представленный здесь aWindow.

Перечисление 1  , Создающее NSTextView, возражает программно

/* determine the size for the NSTextView */
NSRect cFrame =[[aWindow contentView] frame];
 
/* create the NSTextView and add it to the window */
NSTextView *theTextView = [[NSTextView alloc] initWithFrame:cFrame];
[aWindow setContentView:theTextView];
[aWindow makeKeyAndOrderFront:nil];
[aWindow makeFirstResponder:theTextView];

Этот код определяет размер для текстового прямоугольника кадра представления путем выяснения aWindow для размера довольного представление. NSTextView тогда создается и делается представлением содержания aWindow использование setContentView:. Наконец, makeKeyAndOrderFront: и makeFirstResponder: сообщения выводят на экран окно и заставляют текстовое представление подготавливать принимать ввод с клавиатуры.

initWithFrame: метод не только инициализирует получение NSTextView объект, это вызывает объект создать и соединить другие компоненты текстовой системы. Это - удобство, освобождающее Вас от необходимости создать и соединить их самих.