NSColor套装 - 它做什么?

时间:2012-12-14 00:15:03

标签: objective-c cocoa

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

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

谢谢!

2 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:0)

它以贝塞尔曲线以红色填充矩形的方式设置颜色 如果您没有设置颜色,则使用之前设置的颜色(如果您没有设置颜色,则默认为一个)。因此,如果颜色为greenColor,您会看到所有的矩形都填充了绿色。就像那样。