Это возможно, но может быть сделано только программно (это означает, что не в Interface Builder):
, если у вас есть окно, используйте
[window setLevel: NSMainMenuWindowLevel];
если вы используете контроллер окна (NSWindowController) используйте
[windowController showWindow:self];
[windowController.window setLevel: NSMainMenuWindowLevel];
в общем, вы можете использовать на следующих уровнях:
NSNormalWindowLevel
NSFloatingWindowLevel
NSSubmenuWindowLevel
NSTornOffMenuWindowLevel
NSMainMenuWindowLevel
NSStatusWindowLevel
NSDockWindowLevel
NSModalPanelWindowLevel
NSPopUpMenuWindowLevel
NSScreenSaverWindowLevel
Если вы хотите показать окно, самое верхнее из Interfacebuilder (т. вызов меню), создать IBAction в вашем App-делегатом и назначить вызов этому действию:
-(IBAction)showWindowCalledFromMenu:(id)sender {
[self.window setLevel: NSMainMenuWindowLevel];
[self.window makeKeyAndOrderFront:self];
}
Если вы хотите, чтобы окно быть верхним только тогда, когда ваше приложение является активным, вы должны знать, если ваш приложение активно. В вашем «main.xib» смотреть в «действия» от «First Responder». Вы можете использовать следующие события для сброса ваших оконных уровней: «deminiaturize», «order Front», «Order Back» и многое другое.
Надеюсь, это поможет. Повеселись!