首页 文章

滚动内容以在NSTextView上显示当前光标位置

提问于
浏览
0

我有一个用 NSScrollView 包装的 NSTextView 控件对象 . 我想要做的是当文本字符串隐藏在内容视图下方时,使其在当前位置可见 .

enter image description here

参考上面的图片,用

NSUInteger cPosition = [[[textView1 selectedRanges] objectAtIndex:0] rangeValue].location;
[textView1 scrollRangeToVisible:NSMakeRange(0,cPosition)];

滚动视图将自身滚动到一个位置,使得所选字符串(文档)将位于内容视图的底部 . (第11行) . 这不完全是我想要的 . 我希望滚动视图自动滚动以显示当前光标位置的文本字符串,当它隐藏在内容视图下方时(例如,在第14行) . 我该如何改进我的代码?

Muchos thankos .

1 回答

  • 0

    一种解决方案是使用NSString的enumerateSubstringsInRange:options:usingBlock:方法和NSStringEnumerationByParagraphs选项,并将包含cPosition的范围传递给scrollRangeToVisible: . 这样可以使包含cPosition的段落可见 .

相关问题