我是可可编程的新手,我想问问是否有人可以向我解释如何
-(BOOL)makeFirstResponder:(NSResponder *)responder;方法有效。我打算将其用于NSEvent,但是有人可以告诉我如何实现它吗?

我正在尝试使用NSResponder类为我提供一个有效的-keyDown方法。

最佳答案

NSResponder是可可中的基本类之一。任何可以响应按键或菜单命令等事件的类都应该是NSResponder的子类。每个响应者都跟踪其“下一个响应者”,并且每个窗口都跟踪当前是“第一响应者”的对象。当窗口中发生事件时,会向第一响应者发送一条消息。如果该对象能够处理消息,那就太好了。如果没有,它将传递给下一个响应者。这就是所谓的“响应链”。

通常,您对可可中的响应者链不会感到太多困扰。第一响应者主要由用户操作(例如单击控件)确定。

“将其用于NSEvent”没有任何意义。 NSEvent不是响应者,而是使响应者能够完成其工作的东西。

如果您更清楚地描述您要完成的任务,那么我相信我们可以为您指明正确的方向。

08-15 20:42