Actionscript 3 以编程方式创建新框架

Actionscript 3 以编程方式创建新框架,actionscript-3,flash,frame,flashdevelop,Actionscript 3,Flash,Frame,Flashdevelop,我在用Flashdevelop构建一个初学者应用程序时遇到了以下问题 我想创建一个MovieClip类型表。作为类: public class Table extends MovieClip { ... } 它应该包含两个框架:第一个是红色矩形,第二个是蓝色矩形。因此,为两个矩形创建了两个精灵: var table:Sprite = new Sprite(); table.graphics.beginFill(0xff0000); table.graphics.drawRect(this.xC

我在用Flashdevelop构建一个初学者应用程序时遇到了以下问题

我想创建一个MovieClip类型表。作为类:

public class Table extends MovieClip { ... }
它应该包含两个框架:第一个是红色矩形,第二个是蓝色矩形。因此,为两个矩形创建了两个精灵:

var table:Sprite = new Sprite();
table.graphics.beginFill(0xff0000);
table.graphics.drawRect(this.xCoord, this.yCoord, 150, 50);
addChild(table);

var table2:Sprite = new Sprite();
table2.graphics.beginFill(0x0000ff);
table2.graphics.drawRect(this.xCoord + 200, this.yCoord + 100, 150, 50);
addChild(table2);

如何在不同的帧上获取
表2
变量?因此,要接收到
跟踪(totalFrames)
2作为答案?

在Flash IDE之外生成的电影嘴唇和精灵的功能或多或少相同。只有在flashide中创建的MovieClip可以有多个帧,并且您不能在运行时添加或删除帧。 但是,您可以创建一个简单的类来在两个表之间快速切换

public class Switcher():void {
  function showTable1():void { table1.visible = true; table2.visible = false; };
  function showTable2():void { table1.visible  = false; table2.visible = true; };


}

var switch:Switcher = new Switcher();
switch.showTable1();

在Flash IDE之外生成的MovieClips和Sprite的功能大致相同。只有在flashide中创建的MovieClip可以有多个帧,并且您不能在运行时添加或删除帧。 但是,您可以创建一个简单的类来在两个表之间快速切换

public class Switcher():void {
  function showTable1():void { table1.visible = true; table2.visible = false; };
  function showTable2():void { table1.visible  = false; table2.visible = true; };


}

var switch:Switcher = new Switcher();
switch.showTable1();

雪碧没有时间线。我猜在AS3中,当您添加Flash IDE时间线时,不可能添加关键帧。相反,使用数组来存储那些
MovieClips
,并将其视为帧。是的,这是我有点担心的答案——只有Adobe实现frameflow,Flashdevelop不支持它,只需找到另一个解决方案——比如你建议的使用数组的解决方案。无论如何谢谢你!雪碧没有时间线。我猜在AS3中,当您添加Flash IDE时间线时,不可能添加关键帧。相反,使用数组来存储那些
MovieClips
,并将其视为帧。是的,这是我有点担心的答案——只有Adobe实现frameflow,Flashdevelop不支持它,只需找到另一个解决方案——比如你建议的使用数组的解决方案。无论如何谢谢你!使用.alpha是一个糟糕的建议。设置.visible将是一个有效的解决方案。使用.alpha是一个糟糕的建议。设置。可见将是一个有效的解决方案。