Usando as teclas de seta no cacau?
-
14-11-2019 - |
Pergunta
Eu estava fazendo um pouco de pesquisa sobre isso, e eu encontrei este questão.Implementei o código usado lá, mas nada aconteceu.Aqui está o código exato que eu estou usando:
.h ficheiro
#import <Cocoa/Cocoa.h>
@interface Test : NSView {
}
-(void)keyUp:(NSEvent*)event;
-(void)keyDown:(NSEvent*)event;
@end
.m arquivo
#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
O que há de errado?Há algo que eu tenho para adicionar à interface?
EDITAR:Bem, algo realmente fiz acontecer.Eu meu computador beeped em mim.Nada mais.
Solução
Implementar acceptsFirstResponder
:
- (BOOL)acceptsFirstResponder
{
return YES;
}
Além disso, certifique-se de que a sua visão é o primeiro dispositivo de resposta (e.g.clicando dentro da visão).
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow