2011-01-17 5 views
0

수신 할 것으로 예상되는보기, 특히 컨트롤 탭 키 작동 중지 이벤트로 일부 키 이벤트를 가져올 수 없습니다. 다른 키보드 명령도 정상적으로 작동합니다.키 이벤트가 응답자에게 전달되지 않음

NSApplication의 sendEvent()를 서브 클래 싱하여 무슨 일이 일어나고 있는지, Ctrl-Tab을 누르면 이벤트 발생을 keyDown으로 기록 할 수 있습니다. 그러나받는보기의 keyDown이 호출되지 않습니다.

NSApp에서는 [[NSApp keyWindow] firstResponder]가 올바르게 설정되었음을 알 수 있습니다.이 속성은 tableView를 대상으로합니다.

또한 keyWindow keyDown 이벤트 로깅을 시도했지만 해고 중이 아닙니다.

그럼 이벤트에 무슨 일이 일어나는지 어떻게 알 수 있습니까?

아니면 컨트롤 탭에 특별한 것이 있습니까? - 내 견해 등에서 들판을 통과하려고 할 수 있습니까?

이상하게도 keyUp 이벤트는 항상보기로 올바르게 전달됩니다.

답변

1

IIRC의 경우 컨트롤 키 이벤트는 대신 -performKeyEquivalent:으로 처리되므로이를 시도 할 것입니다.

+0

굉장하다. 정확하게 맞다. 여기에서 무슨 일이 일어나고 있는지 알아 내려고 애쓰는 것이 얼마나 실망 스럽습니까? performKeyEquivalent : 컨트롤 키를 캡처합니다. 고맙습니다! – BenL0

관련 문제