1
我想这样做,如果用户在他的键盘上按“返回”键,应用程序必须做一些事情。我尝试以下内容:对关键事件的反应
- (void)keyDown: (NSEvent *) event {
if ([event keyCode] == 36) {
[self doSmthFunction];
}
}
但是当我按下“返回”时,我只听到嘟嘟声。
的完整代码
KeyEventController.m
#import "KeyEventController.h"
#include "myCustomClass.h"
@implementation KeyEventController
- (void)keyDown: (NSEvent *) event {
if ([event keyCode] == 36) {
NSLog(@"log");
}
}
@end
KeyEventController.h:
#import <Cocoa/Cocoa.h>
@interface KeyEventController : NSResponder
@end
此代码在哪个类中?如果代码位于NSResponder的子类中,该代码应该可以工作。 – rdelmar 2012-08-10 02:19:23
它是NSResponder – hockeyman 2012-08-10 05:59:37
的子类您需要更多地解释您的应用程序设置方式。你是否在IB中为你的课程设了一个对象?你是否完全用代码创建了一些东西?您的代码没有问题,问题必须出现在您的应用程序结构中,或者存在一些缺失的连接。 – rdelmar 2012-08-10 06:02:52