NSImageCell:设置工具提示

时间:2011-06-28 22:19:49

标签: objective-c cocoa nstableview nsoutlineview nsimagecell

我正试图在鼠标悬停在NSImageCell上显示工具提示。我已经尝试在Interface Builder上设置属性(在NSImageCell和包含它的NSTableColumn上都有),但是它没有用。

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

NSCellNSTableColumn都不会显示工具提示,因为它们都不是NSView的子类。您必须在表视图本身上设置工具提示。

您可以使用-[NSView addToolTipRect:owner:userData:]为视图的特定区域设置工具提示。结合-[NSTableView frameOfCellAtColumn:row:],您应该能够为每个单元格设置不同的单词。

答案 1 :(得分:1)

我通过在我的NSOutlineView的控制器中覆盖此方法解决了这个问题:

- (NSString *)outlineView:(NSOutlineView *)outlineView toolTipForCell:(NSCell *)cell rect:(NSRectPointer)rect tableColumn:(NSTableColumn *)tableColumn item:(id)item mouseLocation:(NSPoint)mouseLocation;

答案 2 :(得分:1)

如果是NSTableView,您可以使用

(NSString *)tableView:(NSTableView *)tableView toolTipForCell:(NSCell *)cell rect:(NSRectPointer)rect tableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row mouseLocation:(NSPoint)mouseLocation;