Actionscript 3 在flash中更改位图图像

Actionscript 3 在flash中更改位图图像,actionscript-3,Actionscript 3,我希望有人能在这里帮助我。我的任务是在actionscript3(AIR)中编写一个聊天引擎,每条聊天信息都有一张海报的图像。因此,我在任何时候都会在屏幕上显示5条聊天信息,但很明显,与信息相关的图像(例如#1)会一直发生变化,因为最后一个人发布的信息不同 我认为错误的是每次我需要替换图像时都使用.addChild方法,因为它只会在舞台上不断创造更多的东西。我试图做的是下面的代码,但它拒绝更新图像。我认为它应该起作用的方式: 第1行--创建添加到“this.ChatLine”的电影类图像 当下一

我希望有人能在这里帮助我。我的任务是在actionscript3(AIR)中编写一个聊天引擎,每条聊天信息都有一张海报的图像。因此,我在任何时候都会在屏幕上显示5条聊天信息,但很明显,与信息相关的图像(例如#1)会一直发生变化,因为最后一个人发布的信息不同

我认为错误的是每次我需要替换图像时都使用.addChild方法,因为它只会在舞台上不断创造更多的东西。我试图做的是下面的代码,但它拒绝更新图像。我认为它应该起作用的方式:

第1行--创建添加到“this.ChatLine”的电影类图像

当下一个图像出现在第2行时,假设将用新的图像数据覆盖“ImageBitMap”,但该位不起作用

1--
this.ChatLine:bmChatImage=new mbChatImage()

2--
this.ChatLine.LoadChatImage(“NewImage.png”)


问题是你写了

ImageBitMap         =   new Bitmap(ChatImageBMD);
第一次只将
ImageBitMap
添加到显示列表中。因此,在此之后,您只需更改引用“
ImageBitMap
”,而不更改显示的对象。你应该这样写:

ChatImageBMD = Bitmap(ChatImage.content).bitmapData.clone();
if (!ImageBitMap)
{
    ImageBitMap = new Bitmap(ChatImageBMD);
}
else
{
    ImageBitMap.bitmapData = ChatImageBMD;
}
提示:通过选中
ImageBitMap.parent
,可以避免使用布尔值
AddedBitMap


顺便说一下,变量的第一个字母应该是小写,以区别类型和类;)

作为说明。建议不要对变量和函数名使用大写字母。它有助于区分静态类引用。(因此,为什么上面代码中的所有变量都有类着色)
ChatImageBMD = Bitmap(ChatImage.content).bitmapData.clone();
if (!ImageBitMap)
{
    ImageBitMap = new Bitmap(ChatImageBMD);
}
else
{
    ImageBitMap.bitmapData = ChatImageBMD;
}