我有一个子类NSBox。在里面我嵌入了一些NSTextfields,它们在角落里显示了一些奇怪的文物(见image here)。这是我的NSBox的子类代码:
- (void)drawRect:(NSRect)rect {
NSBezierPath* rectanglePath = [NSBezierPath bezierPathWithRoundedRect:rect
xRadius: 4
yRadius: 4];
[NSColor whiteColor];
[rectanglePath fill];
}
有什么想法吗? 谢谢,托马斯
答案 0 :(得分:2)
解决问题的方法是使用[self bounds]而不是rect参数。
- (void)drawRect:(NSRect)rect {
NSBezierPath* rectanglePath = [NSBezierPath bezierPathWithRoundedRect:[self bounds]
xRadius: 4
yRadius: 4];
[NSColor whiteColor];
[rectanglePath fill];
}