Я пытаюсь добавить вторичное окно в нижнюю часть моего главного окна в приложении OS X, с надеждой в конечном итоге сделать его таким, чтобы оно анимировалось из-под окна при нажатии кнопки переключения.Насколько я могу судить, лучший способ сделать это с помощью SDK - добавить окно в качестве дочернего окна, используя - [NSWindow addChildWindow:ordered:]
.Однако, когда я вызываю эту функцию, хотя отображается вторичное окно, оно не добавляется как дочернее окно.Вот функция, вызываемая, когда я нажимаю кнопку:
- (IBAction)childToggleButtonPressed:(id)sender {
[self.window addChildWindow:_secondaryWindowController.window ordered:NSWindowBelow];
NSLog(@"Child Windows: %@", [[self.window childWindows] count]);
}
(я еще не добавил код, чтобы закрыть его, потому что сначала я проверяю, отображается ли он первым).
А вот вывод на консоль:
2011-08-31 12:37:25.312 Playground[1712:707] Child Windows: (null)
Кто-нибудь знает, почему окно не добавляется как ребенок и что я могу сделать, чтобы это исправить?
НекоторыеДополнительный контекст, который может помочь, заключается в том, что я рисую собственное окно, используя изображение в качестве фона для самого окна и строки заголовка.Код, который я изменяю, можно найти по адресу http://cocoawithlove.com/2008/12/drawing-custom-window-on-mac-os-x.html.
Спасибо!
РЕДАКТИРОВАТЬ: Я попытался переопределить функцию - [NSWindow addChildWindow:ordered:]
и записал любую информацию, которую могнайти, и оказывается, что само окно не передается функции.Надеюсь, это поможет кому-то выяснить проблему!