单击Flash中的另一个按钮后如何隐藏一个按钮?

| 我正在使用动作脚本3进行指向和点击游戏。在框架1上有两个按钮,按钮1和2。在框架3上,有两个按钮,按钮A和B。 我想要这样,以便在单击第1帧上的按钮1之后,将隐藏第3帧上的按钮A,或者当我单击第1帧上的按钮2时,将隐藏第3帧上的按钮B。单击隐藏的按钮不会执行任何操作。 提前致谢     
已邀请:
如果您尝试删除显示列表中未包含的内容,则Flash会引发错误。我猜这里最好的解决方案是设置一个时间轴变量来跟踪您按下了哪个按钮。像这样: 在第1帧
var b1:Boolean = false;
var b2:Boolean = false;

button1.addEventListener(MouseEvent.MOUSE_DOWN, checkButton);
button2.addEventListener(MouseEvent.MOUSE_DOWN, checkButton);

function checkButton(e:MouseEvent):void
{
   if(e.target.name == button1) b1 = true;
   else b2 = true;

   gotoAndPlay(3);
}
在第3帧
myButtomA.visible = false;
myButtomB.visible = false;   

if (b1) myButtomA.visible = true;
if (b2) myButtomB.visible = true;
    
有多种方法可以从显示列表中删除对象,或以其他方式将其隐藏。例如:
button1.addEventListener(MouseEvent.MOUSE_DOWN, removeButton);

function removeButton(e:MouseEvent):void
{
 buttonContainer.removeChild(otherButton);
}
您还可以将目标按钮的“可见性”属性设置为false。 非常非常简单,您应该能够根据需要修改此代码段。 关于另一个话题。 我总是敦促人们不要在时间表上发展互动。它只会使事情变得混乱,尤其是当您在AS3中拥有如此强大的面向对象工具时... 无论哪种方式-干杯和好运。 更新-针对OP的最新评论: 当然可以-尽管这是一个很深的问题,但要取决于您的经验。最主要的是参与AS3的面向对象功能,并仅通过代码驱动大多数应用程序。 项目看起来像这样:Fla的功能主要是作为资产的容器(如果您使用嵌入,甚至不使用嵌入),都具有单个空的时间轴框架。然后,主文档类负责启动和构建项目的各个方面-从数据的加载和控制到创建和添加显示列表对象以及建立和控制用户交互的所有方面。经典包/类设计可能用于创建数十个或数百个单独的.AS文件。时间轴仍用于创建复杂的动画,但很少涉及任何代码(保存stop();在此处或在此处)。 当我刚学习此书时-我有一本好书,并且在Google上大受好评,以找出AS3的要点,然后就从那里走了。进行一些简单的项目,您将看到如何快速获得深入的了解。 像这样工作的好处不能被夸大。 如果您还有其他问题,请告诉我。祝好运!     

要回复问题请先登录注册