0

我正在关注一个教程,下面的方法属于一个从NSview. 它只是绘制一个红色矩形。我只是无法弄清楚它是如何做到的。我不明白设置的消息在做什么[bkgColor set]以及它如何影响背景颜色?

- (void) drawRect: (NSRect) rect {
    NSRect bounds = [self bounds];
    NSColor *bkgColor = [NSColor redColor];
    [bkgColor set];
    [NSBezierPath fillRect: bounds];
}

谢谢!

4

2 回答 2

4

set方法为后续绘图命令设置当前绘图上下文的颜色。把它想象成你有一盒蜡笔。如果你拿起红色蜡笔,这相当于[[NSColor redColor] set],所以现在如果你画线条或形状,它们将是红色的。

于 2012-12-14T00:21:48.803 回答
0

它以贝塞尔路径用红色填充矩形的方式设置颜色。
如果你没有设置颜色,它使用之前设置的颜色(如果你没有设置一个,则默认一个)。所以如果颜色是 greenColor,你会看到所有的矩形都用绿色填充。就这么简单。

于 2012-12-14T00:18:32.700 回答