2012-01-08 4 views

답변

6

IKImageBrowserView는이 기능을 사용하여 툴팁 사각형을 추가 할 수 있도록, NSView의이다 : 내 구현을 위해

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSView_Class/Reference/NSView.html#//apple_ref/doc/uid/20000014-SW47

, 나는 크기를 조정하지 않는있는 ScrollView의 내부 이미지 브라우저가를, 그래서

[imageBrowser reloadData]; 
[imageBrowser removeAllToolTips]; 
for (int i=0; i<[images count]; i++) { 
    NSRect rect = [imageBrowser itemFrameAtIndex:i]; 
    ImageObject *image = [images objectAtIndex:i]; 
    [imageBrowser addToolTipRect:rect owner:self userData:image]; 
} 

가 그럼이 기능을 구현 :

단지 내 데이터가 이미지 내 데이터 소스의 배열이고,이 코드를 사용하여 변경할 때 도구 설명을 업데이트해야3210
- (NSString*)view:(NSView *)view stringForToolTip:(NSToolTipTag)tag point:(NSPoint)point userData:(void *)data { 
    ImageObject *image = (ImageObject*)data; 
    return [image imageTitle]; 
} 

이미지 브라우저에서 레이아웃을 변경 한 경우 (열의 추가/제거 크기를 변경하거나 확대/축소 등을 변경 한 경우) 모든 도구 설명을 업데이트해야합니다.

+0

스크롤 이미지 브라우저에 수백 개의 이미지가 포함되어있는 경우 성능에 문제가있는 것으로 생각됩니다. 다른 방법으로'visibleItemIndexes'를 사용하여 보이는 아이템에 대한 툴팁을 추가하고, 뷰가 스크롤 될 때 툴 팁을 리프레시하는 것입니다. – JWWalker