-2

マウスを押したまま、Flashで長方形を描画しようとしています。

フラッシュファイルのコードは次のとおりです。

import flash.events.MouseEvent;

var color:Number;

stage.addEventListener(MouseEvent.MOUSE_DOWN,startDrawing);
stage.addEventListener(MouseEvent.MOUSE_UP,stopDrawing);
function startDrawing(e:MouseEvent):void
{
    stage.addEventListener(MouseEvent.MOUSE_MOVE, makeShapes);
    color = Math.random() * 0xFFFFFF;
}
function stopDrawing(e:MouseEvent):void
{
    stage.removeEventListener(MouseEvent.MOUSE_MOVE, makeShapes);
}

function makeShapes(e:MouseEvent):void
{
    var rectangle:Rectangle = new Rectangle(10,10,color);
    addChild(rectangle);
    rectangle.x = mouseX;
    rectangle.y = mouseY;
}

これが私のactionscript3.0クラスにあるものです:

package  {

    import flash.display.MovieClip; 

    public class Rectangle extends MovieClip {

        public function Rectangle(w:Number=40,h:Number=40,color:Number=0xff0000) {
            graphics.beginFill(color);
            graphics.drawRectangle(0,0,w,h);
            graphics.endFill();
        }

    }

}
4

1 に答える 1

0

変更する必要があるのは、actionscript値のコードだけでした

私はこれを変更しました:

graphics.drawRectangle(0,0,w,h);

これに:

graphics.drawRect(10,10,10,10);
于 2013-02-28T03:39:29.863 に答える