2013-02-28 9 views
-2

Я пытаюсь нарисовать прямоугольник во Flash, когда мышь удерживается.Рисовать прямоугольник в flash actionscript

Вот что я для моего кода во флэш-файле:

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; 
} 

Вот что у меня в ActionScript 3.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(); 
     } 

    } 

} 
+1

Вы можете быть осторожным с вашим кодом, уже есть класс, называемый 'Rectangle' в пакете' flash.geom'. – Marty

ответ

0

Все, что мне нужно изменить был код для значения ACTIONSCRIPT

Я изменил это:

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

к этому:

graphics.drawRect(10,10,10,10);