NSTextView 滚动时未正确刷新
-
21-08-2019 - |
解决方案
您是否设置了 setDrawsBackground
和 copiesOnScroll
属性为 NSScrollView
或者 NSClipView
?
我建议的第一件事是关闭“绘制背景”属性 NSScrollView
:
[myScrollView setDrawsBackground:NO];
请注意,这应该在 NSScrollView
, , 和 不是 在嵌入式上 NSClipView
.
以下内容摘自 文档 可能相关:
如果你的
NSScrollView
包含一个NSClipView
发送一个setDrawsBackground:
消息的参数为NO
到NSScrollView
具有发送的附加效果NSClipView
AsetCopiesOnScroll:
消息的参数为NO
. 。发送的副作用setDrawsBackground:
直接留言至NSClipView
相反,当文档视图滚动时,会出现“轨迹”(先前绘图的痕迹)。
其他提示
看起来像文本字段甚至没有在滚动区域...你确定什么心不是重叠呢?
我有一个类似的麻烦 - 伪像开发当NSTextView被嵌入在另一个滚动视图
(即,NSTableView的)。我居然变成的在的的setdrawsbackground,然后添加一个漂亮的颜色,使其再次消失。
-(void)awakeFromNib{
NSScrollView *scroll = [self enclosingScrollView];
[scroll setBorderType:NSNoBorder];
[scroll setDrawsBackground:YES];
[scroll setBackgroundColor:[NSColor windowBackgroundColor]];
}
这与滚轮事件组合让我用NSTextView在NSTableView的。
-(void)scrollWheel:(NSEvent *)theEvent{
NSScrollView *scroll = [self enclosingScrollView];
[[scroll superview] scrollWheel:theEvent];
}
我有同样的问题前一段时间。我不记得我如何解决它。
尝试将NSTextView放置到另一个视图,如果上海华是自定义视图。只是为了看看会发生什么。
不隶属于 StackOverflow