2011-03-15 3 views
0

NSScrollView에 노브 서브 뷰를 추가하여 iOS 스타일 NSScrollView를 구현했습니다. 구현은 한 가지를 제외하고는 잘 작동합니다. 즉, 커서가 노브보기에서 변경됩니다.NSTextView 상단의 커서 rect

커서 사각형을 설정하려면 NSView s -resetCursorRects 메서드를 사용하고 있습니다.

- (void)resetCursorRects { 
    [self addCursorRect:self.knobFrame cursor:[NSCursor pointingHandCursor]]; 
} 

이 너무 작동하지만, 내가 커서 RECT 경계를 교차으로 커서 즉시 즉시 IBeam 스타일로 재설정됩니다.

어떻게 방지 할 수 있습니까? 노브보기가 불투명하지 않은 것과 관련이 있습니까?

UPDATE 0 :


은 또한 정상적인 NSScroller 스크롤 뷰의 -tile 방법에 NSClipView 오버레이 스크롤러를 강제로 그것을 구현하려하지만, 상단에 위치에 관계없이 무엇을 볼 것 NSTextView의 경우 항상 IBeam 커서 유형을 적용합니다.

UPDATE 1 :


내가 NSTextView-mouseMoved를 오버라이드 (override) 제안이 mailing list 항목을 찾았지만이 강력한 사용자 정의 NSScrollView 구현은 정말 옵션에 대한 만족스러운 해결책이 아니다 때문이다.

답변

0

NSTrackingMouseMoved 옵션 세트로 NSScrollerNSTrackingArea을 설정하고

- (void)mouseMoved:(NSEvent *)theEvent { 
    [[NSCursor pointingHandCursor] set]; 
} 

구현하는 트릭을 수행합니다.