Подтвердить что ты не робот

Измените текст NSTextView программно

Я не могу найти какой-либо параметр, который, как представляется, связан с текстовым значением, указанным в NSTextView. Я понял, что NSTextView использует сложную структуру (с NSLayoutManager и т.д.), Но я не могу найти правильный способ изменить текущее значение text.

4b9b3361

Ответ 1

Правильный метод - "setString" [textView setString:@"the string"];

Ответ 2

Настройка текста на выходе textView Swift Xcode 8.0

textView.string = newString

Ответ 3

Что-то вроде этого:

[textView setString:@"new value"];

Ответ 4

Если вы хотите установить атрибутный текст (форматированный текст), попробуйте

[myTextView setAttributedString:(NSAttributedString*)attrString].

NSTextView содержит объект NSTextStorage, который фактически содержит текст...

Ответ 5

Практически там - программа ниже - это почти работает. Есть два нерешенные проблемы:

1) Для установки правильной точки выбора в тексте требуется два щелчка мыши  первый всегда идет до конца текста. Второе - требуемое  Положение

2) В оболочке напечатана странная ошибка - Ошибка утверждения - [LUPresenter animationControllerForTerm: atLocation: options:],/SourceCache/Lookup/Lookup-160/Framework/Classes/LUPresenter.m:

  import Cocoa


  class MyAppDelegate: NSObject, NSApplicationDelegate {

      let window = NSWindow()


      func applicationDidFinishLaunching(aNotification: NSNotification) {

          window.setContentSize(NSSize(width:600, height:200))
          window.styleMask = NSTitledWindowMask | NSClosableWindowMask |
                             NSMiniaturizableWindowMask |
                             NSResizableWindowMask





          window.opaque = false
          window.center();
          window.title = "My window"

          let ed = NSTextView(frame: NSMakeRect(20, 10, 180, 160))
          ed.font = NSFont(name:"Helvetica Bold", size:20)
          ed.string = "edit me"
          ed.editable = true
          ed.selectable = true

          window.contentView!.addSubview(ed)

          window.makeKeyAndOrderFront(window)
          window.level = 1
      }

      func applicationWillTerminate(aNotification: NSNotification) {
          // Insert code here to tear down your application
      }

  }

  let app = NSApplication.sharedApplication()
  app.setActivationPolicy(.Regular)

  let obj = MyAppDelegate()

  app.delegate = obj
  app.run()