创建sprite 组
先创建一个sprite 容器,在容器内绘制一个200×200 的矩形,这个矩形有2 像素的
边框,灰色填充。var sprite1:Sprite=new Sprite();
sprite1.graphics.lineStyle(2,0x000000);sprite1.graphics.beginFill(0xcccccc);sprite1.graphics.drawRect(0,0,200,200);addChild(sprite1);sprite1.x = 50;
sprite1.y = 50; //把这个sprite 容器移动到舞台坐标为(50,50)处然后,我们再来创建第二个sprite 容器,把它放置在舞台的(300,50)处,在该容器内也
绘制一200×200 的矩形,2 像素边框,灰色填充。代码如下:var sprite2:Sprite=new Sprite();
sprite2.graphics.lineStyle(2,0x000000);sprite2.graphics.beginFill(0xcccccc);sprite2.graphics.drawRect(0,0,200,200);sprite2.x = 300;sprite2.y = 50;addChild(sprite2);最后,我们来创建第三个sprite 容器,它包含一个圆形,我们把它添加到sprite1 容器内,
并给它一个黑色填充,代码如下:var sprite3:Sprite=new Sprite();
sprite3.graphics.lineStyle(2,0x000000);sprite3.graphics.beginFill(0x333333);sprite3.graphics.drawCircle(0,0,25);sprite3.x = 0;sprite3.y = 0;sprite1.addChild(sprite3);现在测试影片,我们看到,在舞台上出现了刚才绘制的这三个图形。也发现,我们刚才设置了圆形的坐标为(0,0),但它并没有出
现在舞台坐标的(100,100)处,原因是我们把sprite3 添加到sprite1 后,sprite3 的坐标位置就是相对于sprite1 的注册点的位置了。也就是说,子对象的坐标点是以其父容器为参照对象的。根据上面的这个示例,sprite3 的坐标点(0,0)就是相对于它的这个父容器sprite2 注册点的相对位置。我们也可以我们在sprite1 和sprite2 中添加侦听函数,当你点击它们之中哪一个,sprite3 就设置为哪个容器的子对象。也就是说,你可以用鼠标点击来控制这个圆形在两个sprite 容器间来回跳转。
sprite1.buttonMode = true;
sprite2.buttonMode = true;sprite1.addEventListener(MouseEvent.CLICK,clickSprite);
sprite2.addEventListener(MouseEvent.CLICK,clickSprite);function clickSprite(event:MouseEvent):void{ event.currentTarget.addChild(sprite3);}