有关如何在NSTextField中更改颜色光标的任何想法,例如
使用UITextField,以下代码可以正常工作
UITextField.appearance().tintColor = UIColor.redColor()
有什么想法吗?
答案 0 :(得分:1)
有几种方法可以解决这个问题。
1)
我刚刚花了一些时间编写一个自定义光标的小样本项目(恰好是一个彩色心脏图标:-)和you can find it here。
它基于找到的解决方案in this very related question。
2)
然后在完成这项工作之后,我意识到你可能只想要的只是 color 一个现有的光标。您可以通过在包含要着色的光标的NSCursor子类上实现此博客文章中的setPointerColor:(NSColor *)newColor
函数来实现。
要记住的重要一点是,您应该使用子类NSTextField来跟踪光标的位置,这样当鼠标进入并在文本字段中移动时,它可以设置自定义光标或光标颜色。
也就是说,您还需要覆盖mouseEntered
和becomeFirstResponder
,并且包含跟踪区域,以便在光标穿过文本字段时跟踪光标。
已添加
原来你的问题是讨论文本字段的 CARET ,它是文本的插入点,与鼠标光标不同。
以下是更改颜色的方法:
// change the insertion caret to another color
let fieldEditor = self.window?.fieldEditor(true, forObject: self) as! NSTextView
fieldEditor.insertionPointColor = NSColor.redColor()
我在here找到了答案。