Я не очень уверен, как работают документы на основе приложений. Я создал некоторые действия для NSObject в Mainmenu.xib. Одна из этого вызывается, когда пользователь нажимает на «File> New»:Определите контроллер для NSDocument для приложения на основе документов
-(IBAction) newDocument:(id)sender{
Document* newDoc =[[Document alloc] init];
[[NSDocumentController sharedDocumentController]addDocument:newDoc];
[newDoc addWindowController: [[NSWindowController alloc] initWithWindowNibName:[newDoc windowNibName] owner:newDoc]];
[newDoc showWindows];
}
Я также этот код внутри OpenDocument: (идентификатор) действия отправителя, который делает то же самое, но из данных конечно нагрузки для определения рабочей области приложения.
Если я запустил приложение, он отображает пустой документ без вызова действия newDocument. Я не знаю, как остановить пустой документ и установить newDocument: называться. Тогда, если я тоже делаю openDocument (поэтому у меня есть два документа, один пустой и один нет), и я выполняю некоторую операцию над вторым документом, который он также реплицирует в первом пустом. Я дважды проверяю делегатов, владельцев файлов, а также если уведомление - (void) windowDidBecomeMain: (NSNotification *) возвращает разные указатели, и все выглядит нормально. Возможно, я не понял поток приложений на основе документов, но я прочитал руководство Apple и другие инструкции. Что мне не хватает?
Возможно, я запутался между nsdocumentcontoller и nswindowcontroller. –
Основная проблема связана с операциями, которые я выполняю внутри окна, которые переупорядочиваются в другом, и я действительно не могу понять, почему –
Вероятно, вы, вероятно, путаетесь с MVC. –