Положение курсора 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
Другие вопросы по тегам