NSTextView
に表示されているテキスト値に関連していると思われるパラメーターが見つかりません。 NSTextView
が複雑な構造(NSLayoutManager
など)を使用していることは理解しましたが、現在のtext
値を変更する有効な方法が見つかりません。
正しいメソッドは "setString" [textView setString:@"the string"];
アウトレットtextViewにテキストを設定するSwift Xcode 8.0
textView.string = newString
このようなもの:
[textView setString:@"new value"];
属性付きテキスト(フォーマットされたテキスト)を設定したい場合は、
[myTextView setAttributedString:(NSAttributedString*)attrString].
NSTextViewには、実際にテキストを保持するNSTextStorageオブジェクトが含まれています。
Objective C/Xcode 9
[myTextView setString:@"The string"];
self.myTextView.string = @"My String";
Swift/Xcode 9
self.myTextView.setString("MyString")
self.myTextView.string = "My String"
ほとんどそこにあります-プログラムは下にあります-これはほとんど機能します。 2つの未解決の問題があります。
1)テキストに正しい選択ポイントを設定するには、マウスを2回クリックする必要があります。最初のポイントは、常にテキストの最後に移動します。必要なものの2番目
ポジション
2)シェルに奇妙なエラーが出力されます-[LUPresenteranimationControllerForTerm: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()