我可以通过代码将我的自定义 NSWindowController 显示为模式窗口:
TSAppDelegate* appDelegate = (TSAppDelegate*) [[NSApplication sharedApplication] delegate];
NSWindow* mainWindow = appDelegate.window;
[NSApp beginSheet: [self window]
modalForWindow: mainWindow
modalDelegate: NULL
didEndSelector: NULL
contextInfo: NULL];
int acceptedModal = (int)[NSApp runModalForWindow: [self window]];
[NSApp endSheet: [self window]];
[[self window] close];
有用。但我需要非模态窗口。它必须显示为模态(见图)并且是非模态的。
我试过了
TSAppDelegate* appDelegate = (TSAppDelegate*) [[NSApplication sharedApplication] delegate];
NSWindow* mainWindow = appDelegate.window;
[[self window] setParentWindow: mainWindow];
或者
[mainWindow addChildWindow: [self window] ordered: NSWindowAbove];
它作为非模式工作,但显示为正常的弹出窗口。
可能吗?