我有一个接受按键输入的自定义视图,它位于NSScrollView
。我已经设置了acceptsFirstResponder
为 yes 并且它正在成功接受 keyDown。但每次我敲击一个键时,我都会听到一声蜂鸣声。我确信还需要其他东西,但不记得是什么了..请帮忙。
-(void)keyUp:(NSEvent *)theEvent{
NSLog(@"is first responder %i", self.window.firstResponder == self);
switch (theEvent.keyCode) {
case KeyCodeEnumBackspace:
case KeyCodeEnumDelete:
{
if (self.scheduleControl.selectedEvent) {
[self.scheduleControl deleteEvent:self.scheduleControl.selectedEvent];
}
}
break;
default:
break;
}
}
知道了。蜂鸣声发生在keyDown
,不在KeyUp
。要消除蜂鸣声,我需要处理它,一个空的实现就足够了。关键是not将其传递给超级
- (void)keyDown:(NSEvent *)theEvent {
}
- (void)keyUp:(NSEvent *)theEvent {
switch (theEvent.keyCode) {
case KeyCodeEnumBackspace:
case KeyCodeEnumDelete:
if (self.scheduleControl.selectedEvent) {
[self.scheduleControl deleteEvent:self.scheduleControl.selectedEvent];
}
break;
default:
break;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)