NSCursor设置不在非聚焦窗口上工作

时间:2012-12-16 12:20:19

标签: objective-c macos cocoa nscursor

编辑:我在GitHub上创建了一个小型XCode项目,它复制了我所描述的问题:https://github.com/mdinacci/testnscursor

我有一个自定义NSTableCellView,我在其中跟踪NSTextField上的鼠标进入/退出事件。当鼠标进入该字段时,我将光标更改为指针:

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

- (void)mouseExited:(NSEvent *)theEvent
{
    NSCursor *cursor = [NSCursor arrowCursor];
    [cursor set];
}

该表显示在NSPopover内,当弹出窗口处于焦点时,上面的代码可以很好地工作,但是当弹出窗口没有聚焦时,它不能正常工作。单元格视图执行接收进入/退出事件,但光标根本不会更新。

这是一个错误吗?当弹出窗口没有聚焦时光标不会更新的任何想法?

1 个答案:

答案 0 :(得分:4)

Apple确认这是一个错误(#2277286),据我所知,没有可用的解决方法。