Положение курсора NSTextField
Есть ли способ получить текущую позицию курсора в NSTextField
? Я нахожу ответы только на UITextField
который не работает для OSX:
if let selectedRange = textField.selectedTextRange{
let cursorPosition = textField.offset(from: textField.beginningOfDocument,to: selectedRange.start)
}
Большое спасибо!
2 ответа
Решение 1 (получено через NSViewController):
let location = (viewController.view.window?.firstResponder as? NSText)?.selectedRange.location
Решение 2 (получено через NSTextField):
let location = textField.currentEditor()?.selectedRange.location
Я использую этот фрагмент, чтобы найти местоположение курсора для
NSTextField
:
let currentEditor = textField.currentEditor() as? NSTextView
let caretLocation = currentEditor?.selectedRanges.first?.rangeValue.location // Int