문제

내가 천천히 학습 Objective-C,코코아,유일한 방법은 나는 지금까지를 캡처하는 주요 이벤트 보기 텍스트가 사용하는 위임하지만,내가 찾는 데 문제가 있 유용한 문서와 예를 구현하는 방법에 대한 솔루션입니다.보 올바른 방향으로 또는 일부 공급 첫 손에 도움이 되나요?

도움이 되었습니까?

해결책

일반적으로,당신이 그것을 구현하는 것은 단순히 추가할 필요한 기능을 보기 컨트롤러로 설정할 수 있습니다.예를 들어,만약 당신이 원하는 코드를 실행하면 보드에,당신은 단지 대기하는 컨트롤러를 구현하 awakeFromNib 기능입니다.

그래서,검색 키를 누르면 텍스트보기에서 있는지 확인 컨트롤러 텍스트기의 대리인,그리고 그런 다음 이를 구현하:

- (void)keyUp:(NSEvent *)theEvent

참고로 이것은 유전 NSResponder 방법,아 NSTextView 방법입니다.

다른 팁

그냥 팁에 대한 구문 강조 표시:

지 않을 강조 표시 전체 보기 텍스트에서는 한-그것은 느립니다.또한하지 않을 강조 마지막 수정을 사용하여 텍스트-editedRange-그것은 매우 느리면 사용자는 페이스트 대형체의 텍스트로 텍스트 보기.

대신해야 합 강조 표시된 텍스트는 다음과 같이 수행:

NSRect visibleRect = [[[textView enclosingScrollView] contentView] documentVisibleRect];
NSRange visibleRange = [[textView layoutManager] glyphRangeForBoundingRect:visibleRect inTextContainer:[textView textContainer]];

당신은 피드 visibleRange 을 강조하는 코드입니다.

그것이 중요하다는 우리에게 당신이 정말로 달성하려고—더 높은 수준의 목표는 당신이 생각하는 키 이벤트를 캡처에는 NSTextView 주소 것입니다.

예를 들어,누군가가 나에게 캡처하는 방법에서 키 이벤트는 NSText분야 그들은 정말 알고 싶은지를 확인하는 방법을 입력합니다.즉,설정하여 수행의 필드의 포맷하의 인스턴스 NSFormatter(지 하나의 포맷터에 포함 된 코코아 또는 사용자 정의 중 하나)를 처리하여 입력 직접 있습니다.

그래서 주어진를 들어,어떤 당신은 정말이 성취하려는?

나는 몇 가지 열심히,그리고 내가 찾았어요 대답을 내 자신의 질문입니다.나는 그 아래 있지만,덕분에 두 친구는 대답했습니다.내가 생각하는 Stack Overflow 환상적인 사이트 이미-난 더 많은 맥 개발자는 자신의 방법을 찾아 한 번에 베타-이 될 수 있는 훌륭한 리소스에 대한 다른 개발자 전환하는 플랫폼입니다.

그래서,저는 한,제안으로 대니 찾아 나의 답변에 위임입니다.내가 이해하지 못에서 대의 게시물이 있다는 것을 세트의 대리자 사용 방법에서는 위임하는 개체는 대리자를 구현해야 말했다.고도에 대한 스트링,나를 찾을 수 있는 방법 textDidChange 는 성취 내가 원하는 것을 더 나은 방법으로 단순히 캡쳐 키를 누르는 것입니다.그렇다면 나는 이것을 구현서 컨트롤러:

- (void)textDidChange:(NSNotification *)aNotification;

에 대응할 수 있습니다되는 텍스트 편집합니다.이 있다 물론 다른 사용할 수 있는 방법,그리고 나는 흥분하는 놀이기 때문에,그들과 나는 알고 배울 것이 많습니다.다시 한번 감사합니다,사람이다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top