我正在使用FlashDevelopIDE 学习 AS3 并Flex进行编译。
我通过创建一个Bitmap类然后在代码中嵌入一个 .png 来添加图像,例如:
敌人
package enemies 
{
import flash.display.Bitmap;
import flash.events.MouseEvent
[Embed(source="../../assets/gardengnome.png")]
public class Enemy extends Bitmap 
{
    public function Enemy() 
    {
        trace("enemy constructed");
    }
}
}
我了解到,为了能够处理,MouseEvent我需要将其Bitmap放入Sprite容器中。
现在,我不知道这是我的做法:
我创建了一个新变量来保存enemyContainer并将Main.as其添加到阶段:
package 
{
 import enemies.Enemy;
 import enemies.EnemyContainer;
 import flash.display.Sprite;
 import Player.Player;
 public class Main extends Sprite 
 {
   public var enemyContainer:EnemyContainer = new EnemyContainer();
     public function Main():void 
 {
   addChild(enemyContainer);
 }
}
}
然后EnemyContainer该类调用Enemy Bitmap保存图形并将其作为子对象添加到自身:
package enemies 
{
import flash.display.Sprite;
import flash.events.MouseEvent
public class EnemyContainer extends Sprite 
{
    private var enemy:Enemy = new Enemy();
    public function EnemyContainer() 
    {
        trace("enemyContainer constructed");
        addChild(enemy);
        addEventListener(MouseEvent.CLICK, handleClick);
    }
    private function handleClick(e:MouseEvent):void 
    {
        trace("Clicked Enemy");
    }
}
}
我还没有足够的经验看到这样做有任何问题。我可以更改Enemy Bitmap类中的图形而无需处理其他任何事情,并Main.as处理EnemyContainer.
但是,如果有推荐的或更有效的方法来处理此问题,我想在养成习惯之前立即学习它。有一个更好的方法吗?
感谢您的任何建议!