手形光标未显示为模型表中添加的NSButton

时间:2012-11-14 12:45:26

标签: macos cocoa cursor mouseover nsbutton

我已经创建了一个NSButton子类并创建了一个我自己的类,其中我添加了代码,当鼠标指针越过按钮时显示手形光标。它适用于在普通视图中添加的按钮。但是,当我在模型表中使用同一个类的按钮时,光标没有显示出来。可能是什么原因?任何想法!

这是我在NSButton子类中添加的代码

- (void)resetCursorRects {
/*
 * change cursor type to a poiting finger when it gets into HyperLink frame.
 */
[super resetCursorRects];
[self addCursorRect:[self bounds] cursor:[NSCursor pointingHandCursor]];

}

2 个答案:

答案 0 :(得分:0)

在Interface Builder中,确保选中了工作表的窗口/面板Title Bar

由于它是一个工作表,标题栏实际上不可见,但由于某些原因,当此属性关闭时,光标跟踪似乎被禁用。

答案 1 :(得分:-1)

Subclassing实例创建一个Category的NSButton。并覆盖
resetCursorRects方法(与上述相同)。

#import将新类别添加到您的控制器并尝试。

如果您不熟悉Category,请尝试this