Открытие листа неприкреплено к окну - PullRequest
0 голосов
/ 02 апреля 2012

У меня проблема с листом, который при первом открытии открывается без привязки к окну. После отклонения, лист работает как надо.

Вот код, с которого я начинаю лист:

- (IBAction)addButtonAction:(id)sender {

    assert ([editorController window]);
    assert (window);

    [NSApp beginSheet: [editorController window]
       modalForWindow: window 
        modalDelegate: editorController 
       didEndSelector: @selector(didEndSheet:returnCode:contextInfo:) 
          contextInfo: nil]; 
}

Переменные 'window' и 'editorController' инициализируются в заголовочном файле делегата приложения как @ private.

didEndSelector определен в файле кода editorController и вызывается при закрытии окна.

Код для didEndSelector выглядит следующим образом:

- (void)didEndSheet:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo
{
    [sheet orderOut:self];
}

Окно отменяется с помощью вызова селектора 'cancelButtonAction', который выглядит следующим образом:

- (IBAction)cancelButtonAction:(id)sender {
    [NSApp endSheet:self.window];
}

Любые мысли приветствуются.

1 Ответ

1 голос
/ 02 апреля 2012

Убедитесь, что опция «видимый при запуске» в NSWindow в xib-файле не включена.

...