cancelOperation:NSView当我按 Esc 时,在我的基本子类中没有被调用。
我检查并收到 Esc 键keyDown。moveLeft此外,正在调用其他操作消息(例如)。
该视图是 Window 的一部分,如下所示:
[self.window addChildWindow:wc.window ordered:NSWindowAbove];
[wc.window makeKeyAndOrderFront:self];
我究竟做错了什么?
我的派生NSView有同样的问题。实施后解决acceptsFirstResponder如下:
- (BOOL)acceptsFirstResponder
{
return YES;
}
您是否将其实施为cancelOperationor cancelOperation:?有很大的不同。方法签名应该是:
- (void)cancelOperation:(id)sender
这适用于我的香草NSView。
就我而言,我有一个带有几个NSWindows 的应用程序。我不得不调用
[self.window makeFirstResponder:self]我的NSView子类来让视图响应cancelOperation:.