在OS X中,当您在每个应用程序中键入文本字段时,鼠标光标通常会消失。即使我在Stack Overflow上输入此文本字段,光标也会消失。 这在大多数时候都很有意义。但是在我的应用程序中,我希望它保持可见,因为用户必须在文本字段之间进行大量点击,而且当鼠标总是消失时,它真的很讨厌。
如何在键入NSTextField
?
答案 0 :(得分:3)
好的,我解决了。
当您在+[NSCursor setHiddenUntilMouseMoves:]
添加断点时,您会注意到它被[NSTextField keyDown:]
调用了
Apple表示,为了防止鼠标消失,重写此方法并不是一个好主意。所以我使用NSTextFieldDelegate通知-(void)controlTextDidChange:(NSNotification *)obj
和-(void)controlTextDidEndEditing:(NSNotification *)obj
。然后我打电话给[NSCursor setHiddenUntilMouseMoves:NO]
它不是100%干净但它有效。
非常感谢Richard和Kurt的大力帮助:)
答案 1 :(得分:2)
我的猜测是,苹果代码很深,鼠标在打字时会消失。因为即使刚开始输入鼠标也会消失,甚至在文本框之外。就像在浏览器窗口中单击并输入一样。