2012-06-30 3 views
0

코코아 초보자 : 여기서는 정말 신비로운 내용을 먼저 다루는 것 같습니다. 클릭했을 때 내용이 기본적으로 선택되고 선택 색상을 변경할 수있는 NSTextField가 필요했습니다. 필자는이 포럼에서 필자가 현장 편집자들의 신비를 시작하기에 충분하다고 생각했습니다. 나는 NSTextField있는 서브 클래스가, 그리고 becomeFirstResponder 방법 오버라이드 (override) : selectionColor입니다이 NSBackgroundColorAttributeName에 키가 NSColor 객체와 1 항목에있는 NSDictionary이다NSPopover를위한 필드 에디터 구성

- (BOOL) becomeFirstResponder { 
    if (!super.becomeFirstResponder) return NO; 
    NSTextView * fieldEditor = (NSTextView *) [self.window fieldEditor:YES forObject:self]; 
    [fieldEditor performSelector:@selector(selectAll:) withObject:fieldEditor afterDelay:0]; 
    [fieldEditor setSelectedTextAttributes:selectionColor]; 
    return YES; } 

. 이 기능은 윈도우와 패널의 텍스트 필드에서 완벽하게 작동하지만 NSPopover보기의 필드에서는 전혀 작동하지 않습니다. 사실, 그것은 텍스트 선택을 불가능하게 만듭니다. 입력란을 클릭하고 입력 할 수는 있지만 텍스트를 선택하여 커서를 끌면 실패합니다. 어떻게 든 필드 에디터를 잘못 구성한다고 결론 내릴 수 있습니다. 나는 그것을 올바르게 참조하고 있는가?

답변

0

나는 내 자신의 질문에 답하는 과정에서 stackOverflow 프로토콜을 따르기를 희망한다. 짧은 대답은 분명히 내가 게시 한 코드가 NSPopovers에서 완벽하게 잘 작동한다는 것입니다. 내가 작동하지 않는다고 생각한 이유는 selectionColor라는 NSDictionary 객체가 올바르게 초기화되지 않았기 때문입니다. 나는 여기 에밀리 Litella 순간을 보내고있다 : "오 ... 절대 신경 쓰지 마라!"내가보기에 지금 유일한 문제는,이 문제를 추적하는 데 엄청난 시간이 걸린다는 것이다.

+1

질문에 대한 답변은 전적으로 허용됩니다. 승인 된 것으로 표시하십시오! –