我有一个动作脚本2.0请求。
我有一个带7个复选框的flash电影。当用户选择了总共4个复选框时,flash影片将转到另一个帧。
我将包含名为mcCheckBox的影片剪辑中的所有复选框。
我只需要代码,一旦选中了四个复选框,就会转到新框架。
答案 0 :(得分:0)
您需要创建一个计数器,每次单击一个复选框时,该计数器会递增,当计数器值为4时,转到下一帧。
你也可能必须保持一个盒子的数组已被检查,以防第二次点击取消选中该框,在这种情况下你会减少计数器。
编辑:
我不使用as2,所以我只能在as3中给你一个例子... 我添加了一个包含所有复选框名称的数组,以便过滤点击事件,如果您在复选框外单击,事件将被注册,但您不想继续使用代码
import flash.events.MouseEvent; var counter:int; var allNames:Array = ['cb1', 'cb2' , 'cb3' , 'cb4']; var boxesList:Array = []; stop(); addEventListener(MouseEvent.CLICK , clickHandler ); function clickHandler(event:MouseEvent):void { var boxName:String = event.target.name; //make sure the target is one of the checkboxes if(allNames.indexOf(boxName ) != -1 ) updateCounter(boxName); } function updateCounter(bName:String):void { var index:int = boxesList.indexOf(bName); if( index == -1 ) { //add to the list of checked boxes boxesList.push(bName ); //increment counter ++counter; }else{ //remove from the list of check boxes boxesList.splice(index , 1 ); //decrement counter --counter; } if(counter == 4 ) gotoAndStop('nextFrame'); trace( counter ); }