Показать NSWindow как лист панели инструментов

Как вы показываете NSWindow из панели инструментов, как NSOpenPanel на картинке ниже?

1 ответ

Решение

Снимите флажок Видимый при запуске из свойств окна в файле NIB, а затем используйте beginSheet:

[NSApp beginSheet:sheetWindow
           modalForWindow:mainWindow
           modalDelegate:self
           didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:)
           contextInfo:NULL];

Дополнительно, NSSavePanel предоставляет beginSheetModalForWindow в качестве удобного метода:

[savePanel beginSheetModalForWindow:mainWindow completionHandler:^(NSInteger result) {
    if (result != NSFileHandlingPanelOKButton) return;
    // Do something
}];
Другие вопросы по тегам