我们有一个 NSTextView,需要在某些事件上重绘单行片段。
本质上,它是一个大纲。因此,当特定行收到“tab out”消息时,我们希望移动包含字形的矩形,而不仅仅是插入 tab 键。
关于如何实现这一目标有什么想法吗?
谢谢!
最佳答案
我看过这个以寻求任何建议,但似乎没有人接受。
如果我理解正确的话,我强烈建议你不要尝试搞乱 TextView 的绘图例程,尤其是当 Cocoa 文本系统在如此多的级别上有如此多的钩子(Hook)时?
这本质上是一个段落级格式问题,不是吗?为什么不直接设置段落的 NSParagraphStyle ?您可以通过设置其 headIndent 来完成此操作,它是用户语言扫描路径(从左到右、从上到下等)开始之前的边距。
您可以使用 NSTextView 的 -textView:doCommandBySelector: 拦截 -insertTab: 和 -insertBacktab:委托(delegate)方法并以此为提示来修改段落样式以缩进到您想要的程度。
关于objective-c - 在 NSTextView 中为行片段重绘单个矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4240419/