
在NSTextVIEw drawRect中绘制任何图形(如线条,矩形):,我的所有图形都剪切为文本容器的大小.
因此,NSTextVIEw的框架大小“允许”我使用它进行绘图,但似乎仅限于容器大小.
如果有可能在文本视图中绘制但在文本容器之外?
自定义NSTextVIEw中的代码 – (voID)drawRect:
[super drawRect:dirtyRect];NSBezIErPath* aPath = [NSBezIErPath bezIErPath];[aPath movetoPoint:NSMakePoint(100,100)];[aPath linetoPoint:NSMakePoint(500,100)];[aPath stroke];
自定义textvIEw调整策略集,因此它使用容器调整所有维度.这是自定义NSTextVIEw的代码
- (voID) setFrameSize:(NSSize)newSize { [super setFrameSize:newSize]; NSTextContainer *container = [self textContainer]; newSize.wIDth -= 200; [container setContainerSize:newSize];}解决方法 感谢Ross Carter的建议: 尝试将调用包装成超级像这样:
[NSGraphicsContext saveGraphicsstate];[super drawRect:rect];[NSGraphicsContext restoreGraphicsstate];总结
以上是内存溢出为你收集整理的cocoa – NSTextView和NSTextContainer大小和剪切区域全部内容,希望文章能够帮你解决cocoa – NSTextView和NSTextContainer大小和剪切区域所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)