¿Usar teclas de flecha en el cacao?

Estaba investigando un poco sobre esto y encontré este pregunta. Implementé el código utilizado allí, pero no pasó nada. Aquí está el código exacto que estoy usando:

archivo .h

#import <Cocoa/Cocoa.h>


@interface Test : NSView {

}

-(void)keyUp:(NSEvent*)event;
-(void)keyDown:(NSEvent*)event;

@end

archivo .m

#import "Test.h"


@implementation Test

- (void)keyDown:(NSEvent*)event {
    NSLog(@"A key has been pressed");
    switch( [event keyCode] ) {
        case 126:       // up arrow
        case 125:       // down arrow
        case 124:       // right arrow
        case 123:       // left arrow
            NSLog(@"Arrow key pressed!");
            break;
        default:
            NSLog(@"Key pressed: %@", event);
            break;
    }
}

@end

¿Lo que está mal? ¿Hay algo que deba agregar a la interfaz?

EDITAR: Bueno, algo en realidad sí logró suceder. Mi computadora me hizo un pitido. Nada mas.

preguntado el 16 de mayo de 11 a las 16:05

¿Agregó la vista a una NSWindow? -

Creo que lo hice, sí. Incluso configuré la clase en Prueba e hice que la vista cubriera toda la ventana. -

1 Respuestas

Implementar acceptsFirstResponder:

- (BOOL)acceptsFirstResponder
{
    return YES;
}

Además, asegúrese de que su vista sea de primera respuesta (por ejemplo, haciendo clic dentro de la vista).

contestado el 16 de mayo de 11 a las 20:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.