2011-02-28 24 views
0

的內容我已經使用(void)drawRect:(NSRect)dirtyRect繪製三角形,它顯示在NSWindow中。我的三角形被繪製,但問題是將它們從窗口中移除。我必須弄清楚如何使用簡單的方法刪除/清除從strokeLineFromPoint:toPoint繪製的線條。清除NSWindow

在此先感謝!

回答

0

您需要使用setNeedsDisplay方法重新繪製視圖。所以,你需要的是這樣的:

-(void) deleteStuff{ 
    removeTriangles = YES; //Boolean value 
    [myView setNeedsDisplay]; 
} 

然後,drawRect中函數中,簡單地把所有的繪圖代碼的if語句中。

(void)drawRect:(NSRect)dirtyRect{ 
    if(!removeTriangles){ 
     //Rest of drawing code 
    } 
} 

不要忘記removeTriangles最初設置爲NO,這樣你就可以繪製三角形!

希望這會有所幫助。

1

您必須創建一個視圖並將其設置爲NSWindow的視圖屬性。然後,使用視圖的drawRect方法進行繪製。 NSWindow沒有drawRect方法。另外,如果您想更改圖形,則必須重繪零件或整個視圖。