在我的Cocoa应用程序的应用程序菜单上,有一个菜单项“ Delete”,它向第一响应者发送delete:
消息。现在,我将键盘焦点放在NSOutlineView
上,在这种情况下,它是第一响应者。缺少对NSOutlineView
的子类化,是否有任何方法可以处理传递给它的delete:
消息? NSOutlineViewDelegate
或NSOutlineViewDataSource
协议似乎都没有定义处理这些动作的任何有趣内容。
最佳答案
第一响应者正是这样:第一响应者。它会将不感兴趣的任何内容转发给它的下一个响应者,然后依次转发,依此类推,直到消息到达应用程序对象为止。
因此,处理此消息所需要做的只是在响应者链中。窗口控制器是一个很好的方法。这将是窗口的下一个响应者。
请参见“Event Architecture” in the Event-Handling Guide。
关于cocoa - 是否有NSResponder委托(delegate)之类的东西?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8638184/