J'ai remplacé une NSOpenGLView pour gérer les événements de clavier. La détection d'événement fonctionne bien, mais chaque fois que j'appuie sur une touche, j'entends et bosse un son ennuyeux. Comment puis-je dire à mon point de vue de se détendre?Bump son ennuyeux avec des événements de clavier dans NSOpenGLView sous-classe
Voici ce que mon keyUp: méthode ressemble à:
-(void) keyUp:(NSEvent *)theEvent
{
NSString *characters = [theEvent charactersIgnoringModifiers];
if ([characters length] != 1)
return;
unichar keyChar = [characters characterAtIndex:0];
if (keyChar == NSLeftArrowFunctionKey)
{
//do something
return;
}
if (keyChar == NSRightArrowFunctionKey)
{
//do something
return;
}
if (keyChar == NSUpArrowFunctionKey)
{
//do something
return;
}
if (keyChar == NSDownArrowFunctionKey)
{
//do something
return;
}
}
Désolé à ce sujet. Je pensais que c'était une question plus générale. J'ai ajouté du code à mon message d'origine. Vous pouvez très bien avoir raison sur la consommation de l'événement, mais je n'arrive pas à comprendre comment consommer un événement. – LandonSchropp
Voir la liste 5-2 ici: http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/EventOverview/HandlingKeyEvents/HandlingKeyEvents.html%23//apple_ref/doc/uid/10000060i-CH7- SW1 ... c'est la façon "officielle" de faire ce que vous essayez de faire. Les méthodes proviennent de NSResponder (dont NSView est une sous-classe). –