Cocoa中的keyUp / keyDown问题(keyUp/keyDown problems in Cocoa)
我正在编写一个将成为基本视频游戏的应用程序,但keyUp:(NSEvent )和keyDown:(NSEvent )方法无法执行。
这是我的代码:
-(void)keyUp:(NSEvent*)event { NSLog(@"Key %@", event); } -(void)keyDown:(NSEvent*)event { switch( [event keyCode] ) { case 126: case 125: case 124: case 123: NSLog(@"Arrow key pressed!"); break; default: NSLog(@"Key %@", event); break; } }我确定它在NSResponder的子类中(虽然它在NSOpenGLView中,可能会影响它吗?)然后我没有看到任何问题。 任何帮助都非常有用。 谢谢 :)
I'm programming an app that will be a basic video game, but the keyUp:(NSEvent ) and keyDown:(NSEvent) methods are failing to execute.
This is my code:
-(void)keyUp:(NSEvent*)event { NSLog(@"Key %@", event); } -(void)keyDown:(NSEvent*)event { switch( [event keyCode] ) { case 126: case 125: case 124: case 123: NSLog(@"Arrow key pressed!"); break; default: NSLog(@"Key %@", event); break; } }I made sure it was in a subclass of NSResponder (although it is in NSOpenGLView, could that be affecting it?) and other then that I don't see any problem. Any help is greatly appriciated. Thanks :)
最满意答案
您是否实现了NSResponder方法acceptFirstResponder以返回YES?
- (BOOL)acceptsFirstResponder { return YES; }Did you implement the NSResponder method acceptsFirstResponder to return YES?
- (BOOL)acceptsFirstResponder { return YES; }更多推荐
发布评论