2012-12-14 39 views
0

我在跟隨一個教程,下面的方法屬於從NSview分類的類。它只是繪製一個紅色的矩形。我無法弄清楚它是如何做到的。我不明白在[bkgColor set]中設置的信息在做什麼以及它如何影響背景顏色?NSColor Set - 它有什麼作用?

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

謝謝!

回答

4

set方法爲後續繪圖命令設置當前繪圖上下文的顏色。想想它,就好像你有一盒蠟筆。如果你拿起一支紅色的蠟筆,這相當於[[NSColor redColor] set],所以現在如果你畫線條或形狀,它們會變成紅色。

0

它以bezier路徑用紅色填充矩形的方式設置顏色。
如果你沒有設置它使用的顏色,那麼先前的設置顏色(如果你還沒有設置的話,它是默認的顏色)。所以如果顏色是greenColor,你會看到所有的矩形填充了綠色。