Создание модального диалога или окна в Какао Objective-C? - PullRequest
16 голосов
/ 14 декабря 2009

Мне нужно создать модальное диалоговое окно, которое загружается из файла пера и должно отображаться по нажатию кнопки в главном окне.

Я могу создать собственное окно в nib-файле и загрузить его по нажатию кнопки, но это не модальное диалоговое окно. Я могу переключиться обратно в главное окно.

MyWindowController - это подкласс NSWindowController. Я использовал приведенный ниже код для отображения моего окна в ответ на событие кнопки:

MyWindowController *pController = [[MyWindowController alloc] 
                                   initWithWindowNibName:@"nibfilename"];
[MyWindowController showWindow:self];

Ответы [ 2 ]

17 голосов
/ 14 декабря 2009

Есть несколько способов сделать это - и фактически два различных вида модального диалога в OS X: приложение-модальное и оконное-модальное. Использование неправильного человека будет раздражать людей. Один из них - это лист, который прикреплен к окну, на которое он влияет (например, диалоги сохранения). Другой - это модальное приложение, которое блокирует все приложение (открытые диалоги работают таким образом, поскольку они не применяются ни к одному из существующих окон). листовая документация Apple должна помочь вам ориентироваться.

11 голосов
/ 31 января 2010

Спасибо ...

(пример). Создайте перо с именем "About"

if(pAbtCtrl == nil)
        pAbtCtrl = [[AboutWindowController alloc] initWithWindowNibName:@"About"];

pAbtWindow = [pAbtCtrl window];

[NSApp runModalForWindow: pAbtWindow];

[NSApp endSheet: pAbtWindow];

[pAbtWindow orderOut: self];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...