2010-06-02 41 views
0
 var blockGraphics : Graphics = null; 

     blockGraphics.clear(); 

     blockGraphics.beginFill(255); 

     blockGraphics.drawRect(10,10,10,10); 

我試圖簡單地繪製一個矩形,但沒有出現在屏幕上。我錯過了什麼?在actionscript3中的drawRect

回答

2

Afaik你不能實例化圖形類.. 你需要製作一個MovieClip或Sprite並使用它..你不能直接繪製舞臺。

var mc:MovieClip = new MovieClip(); 
mc.graphics.beginFill(0xFF0000); 
mc.graphics.drawRect(10,10,10,10); 
mc.graphics.endFill(); 

也不要忘了將它添加到舞臺

addChild(mc); 
0

我並不十分了解圖形類(我已經使用了它幾次),但我不相信你可以對空對象調用ANYTHING。

blockGraphics = null; 
blockGraphics.clear(); 

是一樣的呼喚:

null.clear(); 

這是要給你一個錯誤。通常你會想採取一個影片剪輯或其他這樣的對象,並得到它的圖形實例:

blockGraphics = mc.graphics; 
blockGraphics.clear(); 
blockGraphics.beginFill(0xFF0000); 
blockGraphics.drawRect(10,10,10,10); 

提請「MC」影片剪輯裏面一個紅色矩形。

+0

怎麼樣,如果我沒有電影剪輯三菱商事,但只有一臺 – NativeCoder 2010-06-02 17:47:30

1
var mySprite:Sprite = new Sprite(); 

mySprite.graphics.beginFill(0x000000); 
mySprite.graphics.drawRect(10, 10, 10, 10); 
mySprite.graphics.endFill(); 

addChild(mySprite); 
+0

我一定要堅持使用精靈,可以」我直接在舞臺上畫畫? – NativeCoder 2010-06-02 17:52:47

+0

你是什麼意思?你想實現什麼? – 2010-06-02 19:41:00