我有一个自定义的 NSWindow 类,它具有以下方法:
- (void)setupWindowForEvents{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowDidResignKey:) name:NSWindowDidResignMainNotification object:self];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(windowDidResignKey:) name:NSWindowDidResignKeyNotification object:self];
}
-(void)windowDidResignKey:(NSNotification *)note {
NSLog(@"notification");
[self close];
}
我打电话[_window setupWindowForEvents];
,但windowDidResignKey
从来没有被叫过。
这就是我调用 NSWindow 的方式:当单击状态栏项目时,我会在状态栏项目makeKeyAndOrderFront
的正下方显示窗口,如下所示:
任何想法为什么当窗口失去焦点时我没有收到任何通知?我已经使用了这两种方法NSWindowDidResignMainNotification
,NSWindowDidResignKeyNotification
看看它们中的任何一个是否有效,但没有一个有效。