Метод beginSheet не работает для меня - PullRequest
5 голосов
/ 21 октября 2011

У меня есть saveWindowController (объект подкласса NSWindowController). Я использую initWithWindowNibName: метод для инициализации контроллера.
Я установил владельца файла в xib на SaveWindowController. Я подключаю delegate (из окна) к владельцу файла и window (из контроллера) к NSWindow в xib-файле.

[NSApp beginSheet:[self.saveWindowController window] 
   modalForWindow:[self window]
    modalDelegate:nil didEndSelector:nil contextInfo:nil];

После выполнения этого метода я вижу модальное окно без заголовка, и оно выглядит не как обычный лист. Это просто появляется в левом нижнем углу первого окна.

Не могли бы вы мне помочь, что я делаю не так?

Ответы [ 2 ]

18 голосов
/ 21 октября 2011

У вас есть окно SaveWindowController, установленное в "Видимый при запуске" в XIB?Вы должны снять эту опцию, иначе ваше окно будет отображаться сразу после загрузки XIB и будет неправильно позиционировано.

0 голосов
/ 20 мая 2012

У меня было много проблем, прежде чем я понял, что объявил свое окно листа в IB без строки заголовка . У тебя есть один? Если нет, установите флажок «строка заголовка».

B.

...