문서를 파고 들었지만 수행 방법을 찾지 못했습니다. IKImageBrowserView의 모든 항목에 대한 툴팁을 추가하려면 어떻게합니까?IKImageBrowserView : 모든 항목에 대한 툴팁을 표시하는 방법은 무엇입니까?
4
A
답변
6
IKImageBrowserView는이 기능을 사용하여 툴팁 사각형을 추가 할 수 있도록, NSView의이다 : 내 구현을 위해
, 나는 크기를 조정하지 않는있는 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];
}
이미지 브라우저에서 레이아웃을 변경 한 경우 (열의 추가/제거 크기를 변경하거나 확대/축소 등을 변경 한 경우) 모든 도구 설명을 업데이트해야합니다.
스크롤 이미지 브라우저에 수백 개의 이미지가 포함되어있는 경우 성능에 문제가있는 것으로 생각됩니다. 다른 방법으로'visibleItemIndexes'를 사용하여 보이는 아이템에 대한 툴팁을 추가하고, 뷰가 스크롤 될 때 툴 팁을 리프레시하는 것입니다. – JWWalker