| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 网页制作 > Flash教程 > ActionScript教程 > 文章正文 用户登录
如何加入透明Flas
为新浪博客添加fl
[域名相关]      
flashget下载联盟
265联盟:“Flash
新易网络提供100M
龙太极/100m/asp/
无限网络提供50M 
霞光科技50M/Htm/
苏能科技100M/FTP

AS基础精典教程 第十章 第三个版本的选择题           

AS基础精典教程 第十章 第三个版本的选择题

作者:佚名 来源:闪吧 作者: 小角色闪客 更新:2007-1-13 20:47:57 错误报告 我要投稿

首先,此版本沿用了上一版本的函数answer和gradeUser
在这一版本中,用户的答案与正确答案将使用数组来存放   
看看我们的新代码:
stop();
//   ***   Init   main   timeline   variables   
var   displayTotal;   //   Text   field   for   displaying   user''s   final   score
var   numQuestions   =   2;   //   Number   of   questions   in   the   quiz
var   totalCorrect   =   0;   //   Number   of   correct   answers
//   上一版本中,用户答案使用了两个变量来存放,但是试想如果是10题、100题呢?使用数组将更容易管理,也更容易处理
var   userAnswers   =   new   Array();   //   Array   containing   user''s   guesses   这是定义数组的语句,但是还未输入数据
var   correctAnswers   =   [3,   2];   //   Array   containing   each   correct   answer   这一句既定义数组,同时输入数据,因为正确答案是已知的   
//   ***   Function   to   register   the   user''s   answers
function   answer   (choice)   {
//   Tack   the   user''s   answer   onto   our   array   将数据PUSH进数组,因为是顺序答题,所以用方法PUSH
userAnswers.push(choice);
//   Do   a   little   navigation,   baby
//   如果答案数超过题目总数,自然就跳到quizEnd帧了
//   注意在本例中,已经不用上例的answer.currentAnswer而是使用userAnswers.length来控制问题是否结束
//   我们甚至可以用correctAnswers.length来代替numQuestions,记录正确答案数组的长度,不就是题目总数吗?
if   (userAnswers.length   ==   numQuestions)   {
gotoAndStop   ("quizEnd");
}   else   {
gotoAndStop   ("q"+   (userAnswers.length   +   1));
}
}   
//   ***   Function   to   tally   the   user''s   score
function   gradeUser()   {
//   Count   how   many   questions   were   answered   correctly.
//   开始改题,这里就不用再用上个版本的eval啦,那个东东实在是难懂兼难用,这个版本相对就很清晰明快
for   (var   j   =   0;   j   <   userAnswers.length;   j++)   {
if   (userAnswers[j]   ==   correctAnswers[j])   {
totalCorrect++;
}
}
//   Show   the   user''s   score   in   a   dynamic   text   field
displayTotal   =   totalCorrect;
}   
电影的其他部分不用改动(这就是使用FUNTION的好处啦,升级多快~)   
OK,进入下一章之前想想目前版本的点
*   题目,每次修改题目都要进入FLASH的场景修改,麻烦
*   按钮,每题就要做三个按钮
这都是麻烦的地方,我们要更精益求精地修改,让我们的多选题,轻易地从两题变成10题、100题
接下来我们要做的是
*   进一步改进我们存放数据的结构
*   让我们可以动态地生成每一道题目,只需输入数据,而不需要在FLASH里面作就可以自动生成   
所以——我们需要面向对象编程!(object   oriented   programming)   
chocobo:嘻嘻,众菜鸟是不是都倒了,AS基础教程竟然开始讲OOP了,呵呵,没关系啊,上面的教程一直都这么浅,以后也深不了

文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。