我有一个NSTextView和自定义的NSButton。我想要做的是将该按钮(大小为60x16)插入NSTextView的末尾。
我该怎么做?我一直在寻找如何做到这一点,但我什么也没找到。
我应该从哪里开始?谢谢
最佳答案
我相信这个问题与您的问题非常相似:
Buttons inside an NSTextView / NSTextStorage
引用问题:
我如何让NSButton出现在文本中并对
点击?
请注意,此问题尚未完全解决,但OP似乎已取得良好的开端。希望您可以从讨论中获得一些线索。
这是一个答案:
NSTextAttachment保存附件的内容;这就是价值
的NSAttachmentAttributeName属性的
属性字符串中的NSAttachmentCharacter。内容是
通常由NSFileWrapper给出,但这不是必需的;您可以
使用nil文件包装器创建一个空的NSTextAttachment。
NSTextAttachmentCell处理显示和用户交互
附件。默认情况下,NSTextAttachment将创建一个
NSTextAttachmentCell来显示自身,具体取决于
附件;在一般情况下,这将只是一个图像单元
显示一个图标。
但是,如果您愿意,可以提供一个自定义NSTextAttachmentCell用于
您的附件。它不必是该类的成员
NSTextAttachmentCell;它只需要符合
NSTextAttachmentCell协议。实际上,即使那不是严格的
必要;它只需要实现一些基本方法即可
尺寸和绘图。大多数细胞已经这样做了。
但是,您将需要自己处理鼠标事件。的
您可能要实现的方法是
wantedToTrackMouseForEvent:inRect:ofView:atCharacterIndex:和
trackMouse:inRect:ofView:atCharacterIndex:。这里的字符索引
应该让您确定文本的哪一部分是相关的。