マウスを押したまま、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();
}
}
}