
Код AS3:
package
{
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
public class Drag extends Sprite
{
private var _container:Sprite;
private var _spriteArray:Vector.<Sprite>;
public function Drag()
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(event:Event=null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
_container = new Sprite();
super.addChild(_container);
var circle:Sprite;
_spriteArray = Vector.<Sprite>([]);
for (var i:int = 0; i < 10; i++)
{
circle = new Sprite();
circle.graphics.beginFill(Math.random() * 0xf6f6f6);
circle.graphics.drawCircle(Math.random() * stage.stageWidth, Math.random() * stage.stageHeight, 30);
circle.graphics.endFill();
_spriteArray.push(circle);
_container.addChild(_spriteArray[i] as DisplayObject);
}
}
private function mouseDownHandler(event:MouseEvent):void
{
event.target.parent.startDrag();
}
}
}