我希望能够在NSTextField中突出显示部分文本,但我找不到任何方法可以实现这一点。
我已经定义了一个NSRange,但我找不到使用这个范围来突出显示文本的方法。唯一找到的是textField.selectText,但这似乎会突出显示整个字段。
我正在使用Swift 2。
我希望能够在NSTextField中突出显示部分文本,但我找不到任何方法可以实现这一点。
我已经定义了一个NSRange,但我找不到使用这个范围来突出显示文本的方法。唯一找到的是textField.selectText,但这似乎会突出显示整个字段。
我正在使用Swift 2。
NSTextField
只会显示选定范围。在这种情况下,编辑由一个名为字段编辑器的NSTextView
处理。所以,确保该字段获得焦点(例如,使用NSWindow
的makeFirstResponder:
方法),然后使用NSControl
方法currentEditor
获取字段编辑器,然后可以使用NSText
方法setSelectedRange:
。
ObjC
NSText* fieldEditor = [myField currentEditor];
[fieldEditor setSelectedRange: mySelRange];
Swift
let fieldEditor = textfield.currentEditor()
fieldEditor?.selectedRange = range
currentEditor
返回的NSText
上调用setSelectedRange:
。 - JWWalker