2013-10-29 102 views
0

我有一個繪畫應用程序。我想要放一個圖層(一個正方形的動畫片段),我想繪製它。 直到現在我不能繪畫,但是當我試圖添加movieclip的孩子,我不能繪製該movieclip。製作這樣的東西的方法是什麼? 這是我的代碼:通過動畫片段繪製

import flash.display.Sprite; 

var myThick=10; 
var currentColor = 0X000000; 
var myCanvas:Sprite; 

init(); 

function init():void { 
    drawCanvas(); 
    var clearSwatch:Sprite = new Sprite(); 
    clearSwatch.graphics.beginFill(0xFFFFFF); 
    clearSwatch.graphics.lineStyle(2, 0x000000); 
    clearSwatch.graphics.drawCircle(30, 370, 20); 
    clearSwatch.graphics.endFill(); 
    addChild(clearSwatch); 
    clearSwatch.buttonMode = true; 
    clearSwatch.addEventListener(MouseEvent.CLICK, clearCanvas);//clear 
    } 

function drawCanvas():void { 
    myCanvas = new Sprite(); 
    myCanvas.graphics.beginFill(0xF0F0F0); 
    myCanvas.graphics.drawRect(60, 20, stage.stageWidth-80, stage.stageHeight+40); 
    myCanvas.graphics.endFill(); 
    myCanvas.graphics.lineStyle(myThick, currentColor); 
    addChild(myCanvas); 
    myCanvas.addEventListener(MouseEvent.MOUSE_DOWN, startDraw); 
    //stage.addEventListener(MouseEvent.MOUSE_UP, stopDraw); 
    myCanvas.buttonMode = true; 
} 

function startDraw(event:MouseEvent):void { 
    myCanvas.graphics.moveTo(event.localX, event.localY); 
    myCanvas.addEventListener(MouseEvent.MOUSE_MOVE, paintLine); 
} 

function stopDraw(event:MouseEvent):void { 
    myCanvas.removeEventListener(MouseEvent.MOUSE_MOVE, paintLine); 
} 

function paintLine(event:MouseEvent):void { 
    myCanvas.graphics.lineTo(event.localX, event.localY); 
    event.updateAfterEvent(); 
} 
function clearCanvas(event:MouseEvent):void { 
    myCanvas.graphics.clear(); 
    drawCanvas(); 
} 

我該如何讓它工作? 謝謝!

回答

1

將兩個偵聽器與鼠標移動偵聽器一起添加到舞臺,但使用的圖形命令超過myCanvas

stage.addEventListener(MouseEvent.MOUSE_DOWN, startDraw); 
function startDraw(event:MouseEvent):void { 
    myCanvas.graphics.moveTo(event.localX, event.localY); 
    myCanvas.addEventListener(MouseEvent.MOUSE_MOVE, paintLine); 
} 

等等

+0

它不工作...的塗裝生產線是波紋管的影片剪輯。 – tziuka

+0

我有一個movieclip(原始矩形),我把它放在舞臺上..我想畫在畫布上,並在廣場上... – tziuka

+0

重新排列MCs,使用'setChildIndex(myCanvas,numChildren-1)'或添加它添加方形MC後。 – Vesper