1、创建Flash文档、文本文档。两者放在同一目录下。
2、文本文档中数据有固定样式。一个段落一道题。每道题 由问题、四个选项和一个应答案项。各项之间用“|”隔开。见下图中红线框里的示例。
3、Flash文档中时间轴样式。 纵向分层。横向分块。 时间轴共分为两部分:第一帧区为加载外部数据到数组,加载成功才跳转到下一场景。第二帧区为主界面。
4、界面布局
5、时间思上的代码。import flash.events.MouseEvent;System.useCodePage=true;//防中文乱码var ti:uint=0;//第几题var txt=[];//贮存导入的数据var url:String="select.txt";//外部文件地位var yes:*//变体变量stop();//停止在第一帧//加载外部数据function loadTxt(url:String) {var loader:URLLoader=new URLLoader();loader.load(new URLRequest(url));loader.addEventListener(Event.COMPLETE,LoadFinish);//加载外部完成后}//-----二级函数----供调用----------------------------------function LoadFinish(evt:Event) {var _arr=evt.target.data.split("\n");var i:uint=_arr.length;for (var j:uint =0; j<i; j++) {var s:String=_arr[j].replace(/\s/g,"");txt[j]=s.split("|");}play()//加载完成后再继续动画}//提交答案的按钮事件ok_btn.addEventListener(MouseEvent.CLICK,function(){next_fn()});function next_fn() {trace(ti,yes,txt[ti][5])if (yes==txt[ti][5]) {yes=0;trace("正确……");ti++//只有答对了,才可以继续……} else {trace("worning");//用于测试,不正确就不进行下一题}show_txt.text=txt[ti][0];//显示问题answer_1.label=txt[ti][1];//显示选项Aanswer_2.label=txt[ti][2];//显示选项Banswer_3.label=txt[ti][3];//显示选项Canswer_4.label=txt[ti][4];//显示选项Danswer_9.selected=true;//隐藏的,用于清除选项,伪技术。原理:当这个隐形的家伙被代码选中时,显形的四个单选按钮就清除选项了。哈哈……这个,我帮助很多人解决了,代码不能清除单选按钮选项的难题!!!}answer_1.addEventListener(MouseEvent.CLICK,who_fn);//侦听answer_2.addEventListener(MouseEvent.CLICK,who_fn);answer_3.addEventListener(MouseEvent.CLICK,who_fn);answer_4.addEventListener(MouseEvent.CLICK,who_fn);function who_fn(e) {//侦听函数var str=e.target.name;//谁被点了yes=str.substr(7,1);//trace(yes);//用于测试}next_fn();//默认显示第一道题。作者:张志晨