在NSTextField中键入时使鼠标光标保持可见

时间:2013-01-14 10:34:47

标签: macos cocoa nstextfield

在OS X中,当您在每个应用程序中键入文本字段时,鼠标光标通常会消失。即使我在Stack Overflow上输入此文本字段,光标也会消失。 这在大多数时候都很有意义。但是在我的应用程序中,我希望它保持可见,因为用户必须在文本字段之间进行大量点击,而且当鼠标总是消失时,它真的很讨厌。

如何在键入NSTextField

时让光标保持可见状态

2 个答案:

答案 0 :(得分:3)

好的,我解决了。

当您在+[NSCursor setHiddenUntilMouseMoves:]添加断点时,您会注意到它被[NSTextField keyDown:]调用了 Apple表示,为了防止鼠标消失,重写此方法并不是一个好主意。所以我使用NSTextFieldDelegate通知-(void)controlTextDidChange:(NSNotification *)obj-(void)controlTextDidEndEditing:(NSNotification *)obj。然后我打电话给[NSCursor setHiddenUntilMouseMoves:NO]

它不是100%干净但它有效。

非常感谢Richard和Kurt的大力帮助:)

答案 1 :(得分:2)

我的猜测是,苹果代码很深,鼠标在打字时会消失。因为即使刚开始输入鼠标也会消失,甚至在文本框之外。就像在浏览器窗口中单击并输入一样。