我有一个NSPanel。它的目的是坐在所有空间的所有空间之上,这样就可以了。
我不希望它成为第一个响应者并从另一个应用程序中获得焦点。
我将NSPanel分类为
class SomePanelClass: NSPanel {
override var acceptsFirstResponder: Bool{
return false
}
}
当窗口显示或我将其拖动到应用程序时,我仍然看起来有焦点,它的名称在菜单中,但键击不会在该应用程序中注册,直到我再次点击它为止。窗口。
我还能做些什么来阻止我的应用和面板窃取输入?
答案 0 :(得分:2)
您可能希望在Panel子类上覆盖canBecomeKeyWindow以返回NO。
- (BOOL) canBecomeKeyWindow {
return NO;
}