2004年11月26日

                                                         利用Flash进行多项选择测试设计
                                                                                              □王德智  姚军贤  吕良栋
摘要:一个完整的教学软件应该包含测试设计,而多项选择测试是目前教学软件普遍采用的一种测试形式。本文结合“飞行原理测试”的例子,介绍如何利用Flash及特有的ActionScript动作脚本语言进行多项选择测试设计。
关键词:动作脚本  Flash  多项选择测试   中图分类号:G434
  Flash以其强大的二维交互动画功能令网页和动画制作者赞叹不已。随着版本的升级和其特有的ActionScript(动作脚本)的进一步完善,它在智能交互方面也已令人刮目相看。下面结合“飞行原理测试”的例子介绍如何利用Flash的ActionScript进行多项选择测试设计。
  一、使用的变量及文本文件
 1.变量
  totalquestions(题目总数)
  correctanswer(正确答案序号)
  EOF(题目读入结束标志变量)
  qnumber(题目序号)
  question(序号+题目)
  Answer(用户选择的答案序号)
  view(查看正确答案标志变量)
  score(累计测试分数)
  myscore(测试总得分)
  curquestion(当前答题序号)
  output(正确答案序号)
 2.文本文件
  text.txt定义测试科目和题目总数
  title=飞行原理测试题&totalQuestions=4&eof=1
  question1.txt定义第1题答案
  q=机体轴系与气流轴系相差____?
  &answer1=一个迎角
  &answer2=一个侧滑角
  &answer3=一个迎角和一个侧滑角
  &answer4=下滑角
  &correctanswer=3&eof=1
  question2.txt定义第2题答案
  q=在向上曲线飞行中,若不前后操纵驾驶杆,随V增大,迎角?
  &answer1=增大
  &answer2=减小
  &answer3=不变
  &answer4=可能增大也可能减小
  &correctanswer=1&eof=1
  question3.txt定义第3题答案
  q=放襟翼与不放襟翼比较,若迎角相同,放襟翼下滑时速度小是由于____所致?
  &answer1=阻力系数增大
  &answer2=升力系数增大
  &answer3=升阻比增大
  &answer4=升阻比减小
  &correctanswer=2&eof=1
  question4.txt定义第4题答案
  q=歼5飞机着陆下滑中,放下襟翼后,升阻比____?
  &answer1=增大
    &answer2=不变
  &answer3=可能增大也可能减小
  &answer4=减小
  &correctanswer=4
  &eof=1
二、设计说明



 


 


 


 


 


 


 


图1
主时间轴线如图1所示。各帧的作用如下:
 1、序幕
  检测动画是否下载完毕,若未完毕,在此帧循环,否则转到“初始化”帧。动作脚本是:if(_framesloaded>=_totalframes){
  gotoAndPlay(“初始化”);
{
 2、初始化
  初始化变量,载入测试科目和题目总数,动作脚本是:
  score=0;
  view=0;
  qnumber=0;
  eof=0;
loadVariables(“test.txt”,”",”POST”);



 


 


 


 


 


图2


  3、检测
  检查测试科目和题目总数是否已载入。若未载入,在此帧循环,否则转到“开始”帧。动作脚本是:
  if(eof==1){
  gotoAndStop(“开始”);
  }
 4、开始
  等待用户单击“开始”按钮。如图2所示。动作脚本是:
  stop();
  “开始”按钮动作脚本是:
  on(release){
  gotoAndPlay(“载入”);
  }
 5、载入
  载入试题文本文件。动作脚本是:
  eof=0;
  answer=0;
  qnumber=qnumber+1;
  if(qnumber>totalQuestions){
  gotoAndStop(“完成”);
  }else{
  curQuestions=”第”+qnumber+”题”+”(共”+totalQuestions+”题)”;
  loadVariables(“question”+qnumber+”.txt”,”",”POST”);
  }
 6、循环
  等待载入题目文本文件。若未载入,在此帧循环,否则转到“已载入”帧。动作脚本是:if(eof==1){
  gotoAndPlay(“已载入”);
  }
 7、已载入
  显示测试题目及答案选项。如图3所示。动作脚本是:
  question=qnumber+”.”+q;
  stop();
  四个答案选项的单选按钮动作脚本是:
  单选钮1
  on(release){
  gotoAndStop(2);
_parent.answer=1;



 


 


 


 


 


 


   


图3
    }
  单选钮2
  on(release){
  gotoAndStop(3);
  _parent.answer=2;
  }
  单选钮3
  on(release){
  gotoAndStop(4);
  _parent.answer=3;
  }
  单选钮4
  on(release){
  gotoAndStop(5);
  _parent.answer=4;
  用户选择答案后,可单击“继续”按钮做下一题。“继续”按钮的动作脚本是:
  on(release){
  if(answer==correctanswer&&view==0){
  score=score+1;
  }
  output=”";
  view=0;
  gotoAndPlay(“载入”);
  }
  若用户想终止做题,可单击“终止”按钮。“终止”按钮的动作脚本是:
  on(release){
  if(answer==correctanswer&&view==0){
  score=score+1;
  }
  output=”";
  view=0;
  gotoAndPlay(“完成”);
  }
  若用户想查看本题正确答案,可单击“查看”按钮。这样即使用户作对了也不会得分。“查看”按钮的动作脚本是:
  on(release){
  output=”正确答案是:”addcorrectanswer;
  view=1;
  }
 8、完成
显示用户所得的分数。如图4所示。动作脚本是:



 


 


 


 


 
 
图4
  myscore=int((score/totalQuestions)*100);
  curQuestions=”";
  stop();
  若用户想重新测试,可单击“重新测试”按钮。动作脚本是:
  on(release){
  gotoAndPlay(1);
  }
  由上可见:利用Flash进行多项选择测试设计主要是,使用动态文本框动态显示信息,给按钮和特定的帧分配动作,使用LoadVariables动作载入文本文件设置变量。当然,我们完全可以取消文本文件,而把题目及答案放入数据库中,通过ASP处理数据。
(作者单位:空军第三飞行学院教育技术中心辽宁锦州121000)

世界文学名著《格列佛游记》精缩


(英国)斯威夫特


 


格列佛是一个小庄园主的儿子,从小喜欢旅行,为了实现自己的愿望,他让父亲把自己培养成一个医生,为的是能够随船出海周游世界。作为船上的医生,格列佛很少呆在陆上,大半生都在海上度过。他有许许多多奇特的经历,但最奇的要算1699年那一次了。


起初几个月,航行十分顺利,船已绕过了半个地球,可到了苏门答腊时,遇上了可怕的风暴,船被飓风吹到礁石上撞成碎片,大半水手都丧了生,只有6人驾一小舟逃脱性命,格列佛便是其中之一。但他们仅仅划了数海里,小船又被巨浪掀翻。格列佛好不容易才游到岸上,他发现自己来到了一个陌生、荒凉、杳无人迹的地方。这时,他又累又乏,顾不得这许多,倒在草地上便睡着了。


醒来时已是早晨。格列佛想翻身起来,但发觉四脚像被绑在地上一样不能动弹,甚至连头也不能转动,只听得一阵细小的嗡嗡之声,仿佛四周有人,但除了头上的天穹,什么也未看见。正在惊讶之际,格列佛忽然觉得左腿上有什么东西在移动,就像是一只大虫子朝他身上爬来。直到那东西进入视线,他才看见那是一个不足6英寸高的小人儿,握着弓箭,走在他的胸膛上。紧接着,又有几十个小人,排着战斗队列走了上来。格列佛吓得大叫一声,所有的小人便都跑开了,但没多时又重新跑了回来,登上了他的身体。格列佛挣扎了一下,想要移动躯体,接着便有无数支小箭,如雨般地向他射来,像针刺般地作痛。他只好静静躺着,不敢轻举妄动了。这时,他的头已略可转动,他转过头来,看见有数百小人,在他右耳旁边建起一个8英寸高的平台。一个衣着华丽的官员登上台去,对着他的耳朵说了一些什么。格列佛自然是一句也听不懂,只是重复地听到一个名字“利立普特”。他猜想,或许就是这个小人国的国名。那官员的友好态度使格列佛放了心。他忽觉非常饥饿,便用手指着自己的嘴,表示要吃东西,接着就有无数扶梯搭在他肩上,上百个小人抬着一筐筐的食物和一桶桶清水倒进他的嘴里。


格列佛哪里知道,小人们在食物里放了催眠药,吃过东西之后,他便昏昏入睡了。就在他熟睡的时候,小人国的500个民工和工程师赶造了一部巨大的马车,由1500匹骏马拉着,把格列佛运到了利立普特的首都密尔登都。密尔登都是一座美丽的城市,街道、建筑、草地、花园,全都像木偶戏院的布景。市民们万人空巷,赶来观看格列佛这位“巨人”。经过国王亲自观察,认定此人没有危害性后,才决定留下他来,并下令让市郊的村庄每天供应60头牛、40头羊和许多面包、牛奶,以此作为巨人的食品。国王还派了6名教师,专教格列佛学习利立普特语言。作为恢复自由的条件,格列佛必须替国王递送快信,帮助工人搬运石头修建王宫。


渐渐地,格列佛才知道,在这个小人国里同样有着烦恼和危险。原来利立普特有两大政党——高跟党和低跟党,经常为了鞋跟的高低而争论不休。此外,在隔利立普特不远的海岛上,还有另一个小人国,名叫不来夫斯古,这两个相邻的国家结下了世代的冤仇,时常发生战争。利立普特的国王考虑到格列佛的力量,便决定派他去摧毁他们的敌人。


不来夫斯古帝国位于利立普特的东南,两岛间隔着一片水域,水深约六七英尺。格列佛隔海观望,只见不来夫斯古的15艘战船如同儿童玩具排列在岸边。格列佛潜入水中,用一根长绳套了15个钩子,把15艘战船一齐拉到了利立普特这边。这袭击来得十分突然,不来夫斯古的兵士纷纷弃船跳水逃走。这一战,利立普特未发一兵一卒就大获全胜,格列佛成了利立普特举国称颂的英雄。


可是,国王的野心有增无减,他命格列佛要灭掉不来夫斯古,使之成为殖民地。格列佛拒绝了这一要求,他说;“我不愿让一个自由勇敢的民族沦为奴隶。”国王大怒,说他不忠。几天后,格列佛从一位朋友处得知,国王正与几个亲信密谋,准备先弄瞎他的眼睛,然后将他慢慢饿死。他只得给国王留下一封信,说是要离开几天,然后就神秘地奔向不来夫斯古,把他掳来的15艘战舰也一并带了过去。不来夫斯古的国王热情地欢迎了他。


在不来夫斯古没住几天,格列佛得到了一个天赐的良机,使他得以重返故里。那天,当他正闷闷不乐地在沙滩上散步时,忽见水面上浮起一件东西,走近一看,原来是一只小船(不是小人国的小船,而是足以载下格列佛的小船)底儿朝天地搁在浅水里。不来夫斯古出动了上千的民工、水手,由一位将军指挥,好不容易才帮助格列佛把船拖上岸,将船修好。在一个顺风的早晨,格列佛告别了国王和不来夫斯古人,乘船到了海上。3天后,又幸运地搭上了一艘去英国的大船,回到了家乡。当他向人们讲起这次奇特的经历时,谁也不相信。幸好他离开不来夫斯古时带有几头活牛、活羊,人们见了这些实物,才相信世界上真有小人国的存在。


在家里没住上两月,格列佛又想念起海上的生活,渴望到新的地方去,很快地便作为“冒险号”的医生,再次乘船出海。不料他这一次的遭遇又较前一次更险更奇。


冒险号经过印度时,遇到海洋上的季风风暴,船在海上忽东忽西,最后不知漂到了什么地方。风暴平息后,为了补充淡水,大船驶向一块不知名的陆地。船长在近岸处抛了锚,派遣12人驾一小舟上岸找水,格列佛志愿参加这个小组。上了岸他就单独行动,东走西瞧,除了光秃秃和连绵起伏的山峦外,什么也未发现,也未找到水源。格列佛败兴而返,来到岸边,远远看见小船已离岸向大船驶去。一阵狂呼大叫,船上的伙伴连头也不回。格列佛正感惊疑,忽见一个无比高大的巨人,在后面追赶小船,深深的海水只淹到他的膝部;要不是海边峭拨的山崖有所妨碍的话,小船早就被他抓在手里了。见此情景,格列佛哪敢怠慢,转身就朝陆上跑去。


他奔上一座小山,这才把当地的景象看得比较清楚:前面显然是一片田园,但并不像家乡的田园那样,这里的浅草足有一丈多深,田里的谷物比这更为高大。为了躲避巨人,格列佛直朝那片田地跑去,足足花了半个小时才跑到田边。这时他看见一伙前来收割庄稼的巨人,每个人都有教堂的尖塔那样高,讲起话来像是天上打雷。格列佛连忙钻进庄稼地里,躺在地上不敢动弹。那伙人开始收割,很快就到了他身边。一只大脚迎面朝他踏来,眼见就要变成一团肉泥,格列佛吓得大叫一声,那脚又缩了回去。一个农民好奇地看了看他,然后用两根手指夹着他的腰部,把他从地上拾起来,他觉得自己好像立刻升到了半空中。这时他心里充满了恐惧,深怕那人一松手,自己就会跌得粉身碎骨。不过还好,那农民没有把他摔下,而是用一张手巾把他从头到脚地包裹起来,提回了家里。


农民的妻子见到格列佛时,就像格列佛的妻子见到一只小老鼠时那样,吓得尖叫了一声。可是,没有多久,她就喜欢上这个小东西了。吃饭时,他们坐在30多英尺高、20多英尺见方的桌子旁,把格列佛放在桌上,用指尖掐了一小块面包放在他面前。格列佛从怀中掏出刀子,费了好大的和把面包切开吃了起来。正在这时,忽听一声巨吼,像是10个工厂一起开工一样,原来是1只比公牛大3倍的小花猫跳到了女主人膝上。格列佛大吃一惊,深怕那猫会伤害自己。饭后,农民外出于活去了,女主人把格列佛放在自己的床上,用一张比船帆更大、更粗糙的手巾盖着他。正当格列佛睡得正熟时,两只像獒犬一样大的小老鼠爬上床来东嗅西嗅,他被惊醒了,站起来用刀子同老鼠战斗。幸亏女主人及时赶到,才把老鼠吓跑。 


那农民受了别人的怂恿,决定将格列佛带到市场上去展览卖钱。每到赶集的日子,他就用一个小盒子把格列佛装在里面,带到集市上去,强迫他做各种姿势的表演。农民因此而赚了不少的钱,格列佛却感到受了莫大的侮辱。但那农民还不满足,后来又把他带到首都去,引起全城轰动。王后见了这个彬彬有礼的小人儿,感到非常高兴。她问起格列佛的家乡和来历,格列佛回答得十分得体。于是,她用一千个金币从农民那里把他买了下来。


王后把格列佛托在手上去见国王,国王起初还以为他是某个智者制造的机器人,经过一番仔细地盘问,才相信他确实是人类。王后非常喜欢和格列佛在一起,每餐饭都让他陪伴着自己。她在桌上为他准备了一张小桌,常常把一小块一小块的食物赏赐给他。王后喜欢看他一口一口吃东西的样子,而她自己吃起东西来却像一个粗鲁的英国农民,在国王的寝室里,国王常常向他问起欧洲。可是,每当格列佛兴高采烈地介绍着欧洲或美国的一切时,国王总要嘲笑他,说他是个自命不凡的小东西。对于格列佛讲到的政府、宗教、法律、风俗,国王都嗤之以鼻。他对火药的发明、武器的制作尤其不感兴趣,他认为,谁要能使本来只出产一串谷穗的土地长出两串谷穗,那才真正是对人类的贡献。       


格列佛在大人国一住就是3年。他多次想到家乡,怀念亲人,可是要逃走却非常困难。有一次他陪同国王和王后巡视边疆,被装在小木箱里被人带到海边上呼吸新鲜空气。当他在小木箱里睡得正熟时,天空中的鹰错把木箱当成乌龟叼了起来,几只鹰在天上争夺,木箱掉进海里。格列佛躺在木箱里在海上漂流了一段时间,才被路过的一艘船打捞上去,得以重返英国。


 


作品简介


长篇小说《格列佛游记》  (旧译<海外轩渠录>),是英国文学上的一部著名作品。作者斯威夫特(16671745)生于爱尔兰的一个贫苦人家庭,是一位杰出的讽刺作家。本书故事生动,想象奇特,向为全世界读者喜爱。作者借主人公格列佛的游历,抨击了侵略战争和殖民主义,对英国当时的,政治和种种不合理的社会现象也多有讽刺和批评。他的散文作品风格质朴,用语准确精练,被认为是典范的英语。


                                           

                          Flash MX常用ActionScript速查手册
 ActionScript是Flash的脚本语言,是一种面向对象编程语言。使用ActionScript可以控制Flash动画中的对象,创建导航元素和交互元素,扩展Flash创作交互动画和网络应用的能力。本文主要介绍Flash MX中最常用到的ActionScript集合。


一、动作
动作部分的Action是用来控制影片播放状态的脚本集合。以利于Flash脚本编写人员速查。


(一)影片控制
1.goto


语法:gotoAndPlay(scene, frame)


参数:scene 播放头将转到场景的名称。frame 播放头将转到的帧的编号或标签。


描述:动作;将播放头转到场景中指定的帧并从该帧开始播放。如果未指定场景,则播放头将转到当前场景中的指定帧。


2.on


语法:on(mouseEvent) {statement(s);}


参数: statement(s)是指发生mouseEvent时要执行的指令。


mouseEvent是“事件”触发器。当发生此事件时,执行事件后面花括号中的语句。可为mouseEvent参数指定下面的任何值:


press在鼠标指针经过按钮时按下鼠标;release在鼠标指针经过按钮时释放鼠标按钮;releaseOutside当鼠标指针在按钮之内时按下按钮后,将鼠标指针移到按钮之外,此时释放鼠标;rollOut鼠标指针移出按钮区域;rollOver;鼠标指针滑过按钮;dragOut在鼠标指针滑过按钮时按下鼠标,然后滑出此按钮区域;dragOver在鼠标指针移过按钮时按下鼠标,然后移出此按钮,再移回此按钮;keyPress(key)按下指定的key。此参数的key部分可使用Flash“键盘键和键控代码值”中所列的任何键控代码进行指定,或者使用Key对象的属性摘要中列出的任何键常量进行指定。


描述:事件处理函数;指定触发动作的鼠标事件或按键事件。


3.play


语法:play()


描述:动作;在时间轴中向前移动播放头。


4.stop


语法:stop


描述:动作;停止当前正在播放的影片。此动作最通常的用法是用按钮控制影片剪辑。


5.stopAllSounds


语法:stopAllSounds()


描述:动作;在不停止播放头的情况下停止影片中当前正在播放的所有声音。设置到流的声音在播放头移过它们所在的帧时将恢复播放。


(二)浏览器/网络
该部分的Action是Flash MX用来与影片或外部文件进行交互操作的脚本集合。


1.fsCommand


语法:fscommand(″command″, ″parameters″)


参数:command。parameters均是一个传递给宿主应用程序用于任何用途的字符串;或者一个传递给Flash Player的值。


描述:动作;使Flash影片能够与Flash Player或承载Flash Player的程序(如Web浏览器)进行通讯。还可使用fsCommand动作将消息传递给Director,或者传递给VB、VC++和其他可承载ActiveX控件的程序。


2.getURL


语法:getURL(url [, window [, ″variables″]])


参数:url可从该处获取文档的URL。


window一个可选参数,指定文档应加载到其中的窗口或HTML框架。你可输入特定窗口的名称,或从下面的保留目标名称中选择:_self指定当前窗口中的当前框架;_blank指定一个新窗口;_parent指定当前框架的父级;_top指定当前窗口中的顶级框架;variables用于发送变量的GET或POST方法。如果没有变量,则省略此参数。GET方法将变量追加到URL的末尾,该方法用于发送少量变量。POST方法在单独的HTTP 标头中发送变量,该方法用于发送长的变量字符串。


描述:动作;将来自特定URL的文档加载到窗口中,或将变量传递到位于所定义URL的另一个应用程序。若要测试此动作,请确保要加载的文件位于指定的位置。若要使用绝对URL,则需要网络连接。


3.loadMovie


语法:loadMovie(″url″,level/target[, variables])


参数:url要加载的SWF文件或JPEG文件的绝对或相对URL。


target指向目标影片剪辑的路径。目标影片剪辑将替换为加载的影片或图像。只能指定target影片剪辑或目标影片的level这两者之一。


level一个整数,指定Flash Player中影片将被加载到的级别。在将影片或图像加载到级别时,标准模式下“动作”面板中的loadMovie动作将切换为loadMovieNum;在专家模式下,必须指定loadMovieNum或从“动作”工具箱中选择它。


variables一个可选参数,指定发送变量所使用的HTTP方法。该参数须是字符串GET或POST。


描述:动作;在播放原始影片的同时将SWF或JPEG文件加载到Flash Player中。loadMovie动作使你可以同时显示几个影片,并且无需加载另一个HTML文档就可在影片之间切换。


使用unloadMovie动作可删除使用loadMovie动作加载的影片。


4.loadVariables


语法:loadVariables (″url″ ,level/″target″[, variables])


参数:url变量所处位置的绝对或相对URL。


level指定Flash Player中接收这些变量的级别的整数。参数具体用法同loadmovie。


target指向接收所加载变量的影片剪辑的目标路径。


variables一个可选参数,指定发送变量所使用的HTTP方法。


描述:动作;从外部文件(例如文本文件,或由CGI脚本、ASP、PHP脚本生成的文本)读取数据,并设置Flash Player 级别或目标影片剪辑中变量的值。此动作还可用于使用新值更新活动影片中的变量。


5.unloadMovie


语法:unloadMovie[Num](level/″target″)


参数:level加载影片的级别(_levelN)。从一个级别卸载影片时,在标准模式下,“动作”面板中的 unloadMovie动作切换为unloadMovieNum;在专家模式下,必须指定unloadMovieNum,或者从“动作”工具箱中选择它。


target影片剪辑的目标路径。


描述:动作;从Flash Player中删除一个已加载的影片或影片剪辑。


(三)影片编辑控制
1.duplicateMovieclip


语法:duplicateMovieClip(target, newname,depth)


参数:target要复制的影片剪辑的目标路径。


newname复制的影片剪辑的唯一标识符。


depth复制的影片剪辑的唯一深度级别。深度级别是复制的影片剪辑的堆叠顺序。这种堆叠顺序很像时间轴中图层的堆叠顺序;较低深度级别的影片剪辑隐藏在较高堆叠顺序的剪辑之下。必须为每个复制的影片剪辑分配一个唯一的深度级别,以防止它替换现有深度上的影片。


描述:动作;当影片正在播放时,创建一个影片剪辑的实例。无论播放头在原始影片剪辑(或“父级”)中处于什么位置,复制的影片剪辑的播放头始终从第一帧开始。如果删除父影片剪辑,则复制的影片剪辑也被删除。


2.onClipEvent


语法:onClipEvent(movieEvent){


statement(s);


}


参数:movieEvent是一个称作“事件”的触发器。当事件发生时,执行该事件后面花括号中的语句。可以为movieEvent参数指定下面的任何值:load影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。;unload在从时间轴中删除影片剪辑之后,此动作在第一帧中启动。处理与Unload影片剪辑事件关联的动作之前,不向受影响的帧附加任何动作;enterFrame以影片帧频不断地触发此动作。首先处理与enterFrame 剪辑事件关联的动作,然后才处理附加到受影响帧的所有帧动作脚本;mouseMove每次移动鼠标时启动此动作。_xmouse和_ymouse属性用于确定当前鼠标位置;mouseDown当按下鼠标左键时启动此动作;mouseUp当释放鼠标左键时启动此动作;keyDown当按下某个键时启动此动作。使用Key.getCode方法获取最近按下的键的有关信息;keyUp当释放某个键时启动此动作。使用Key.getCode方法获取最近按下的键的有关信息;data当在loadVariables或loadMovie动作中接收数据时启动此动作。当与loadVariables动作一起指定时,data事件只发生一次,即加载最后一个变量时。当与loadMovie动作一起指定时,获取数据的每一部分时,data事件都重复发生。


statement(s)发生mouseEvent时要执行的指令。


描述:事件处理函数;触发为特定影片剪辑实例定义的动作。


3.removeMovieClip
语法:removeMovieClip(target)


参数:target用duplicateMovieClip创建的影片剪辑实例的目标路径,或者用MovieClip对象的 attachMovie或duplicateMovieClip方法创建的影片剪辑的实例名。


描述:动作;删除用MovieClip对象的attachMovie或duplicateMovieClip方法创建的,或者用 duplicateMovieClip动作创建的影片剪辑实例。


4.setProperty


语法:setProperty(″target″,property,value/expression)


参数:target到要设置其属性的影片剪辑实例名称的路径。


property要设置的属性。


value属性的新文本值。


expression计算结果为属性新值的公式。


描述:动作;当影片播放时,更改影片剪辑的属性值。


5.startDrag


语法:startDrag(target,[lock ,left ,top ,right,bottom])


参数:target要拖动的影片剪辑的目标路径。


lock一个布尔值,指定可拖动影片剪辑是锁定到鼠标位置中央(true),还是锁定到用户首次点击该影片剪辑的位置上(false)。此参数是可选的。


left、top、right、bottom相对于影片剪辑父级坐标的值,这些坐标指定该影片剪辑的约束矩形。这些参数是可选的。


描述:动作;使target影片剪辑在影片播放过程中可拖动。一次只能拖动一个影片剪辑。执行startDrag动作后,影片剪辑将保持可拖动状态,直到被stopDrag动作明确停止为止,或者直到为其他影片剪辑调用了 startDrag动作为止。


6.stopDrag


语法:stopDrag()


描述:动作;停止当前的拖动操作。


7.updateAfterEvent


语法:updateAfterEvent()


描述:动作;当在onClipEvent处理函数中调用它时,或作为传递给setInterval的函数或方法的一部分进行调用时,该动作更新显示(与为影片设置的每秒帧数无关)。如果对updateAfterEvent的调用不在 onClipEvent处理函数中,也不是传递给setInterval的函数或方法的一部分,则Flash忽略该调用。


(四)变量
该部分Action是Flash MX脚本语言中的变量及对应操作的脚本集合。


1.delete


语法:delete reference


参数:reference要消除的变量或对象的名称。


描述:运算符;销毁由reference参数指定的对象或变量,如果该对象被成功删除,则返回true;否则返回false值。


2.set variable


语法:set(variable,expression)


参数:variable保存expression参数值的标识符;expression分配给变量的值。


描述:动作;为变量赋值。variable是保存数据的容器。变量可以保存任何类型的数据(例如,字符串、数字、布尔值、对象或影片剪辑)。每个影片和影片剪辑的时间轴都有其自己的变量集,每个变量又都有其自己独立于其他时间轴上的变量的值。


3.var


语法:var variableName1 [= value1][...,variableNameN [=valueN]]


参数:variableName标识符;value分配给变量的值。


描述:动作;用于声明局部变量。如果在函数内声明局部变量,那么变量就是为该函数定义的,且在该函数调用结束时到期。如果变量不是在块({})内声明的,但使用call动作执行该动作列表,则该变量为局部变量,且在当前列表结束时到期。如果变量不是在块中声明的,且不使用call动作执行当前动作列表,则这些变量不是局部变量。


4.with


语法:with (object) {


statement(s);


}


参数:object动作脚本对象或影片剪辑的实例;statement(s)花括号中包含的动作或一组动作。


描述:动作;允许你使用object参数指定一个对象(比如影片剪辑),并使用statement(s)参数计算对象中的表达式和动作。这可以使你不必重复书写对象的名称或路径。


(五)条件/循环
该部分Action是Flash MX脚本中如何操作影片逻辑的脚本集合。


1.break


语法:break


描述:动作;出现在一个循环(for、for..in、do while或while 循环)中,或者出现在与switch动作内特定case语句相关联的语句块中。break动作可命令Flash跳过循环体的其余部分,停止循环动作,并执行循环语句之后的语句。当使用break动作时,Flash解释程序会跳过该case块中的其余语句,转到包含它的 switch动作后的第一个语句。使用break动作可跳出一系列嵌套的循环。


2.case


语法:case expression: statements


参数:expression任何表达式;statements任何语句。


描述:关键字;定义用于switch动作的条件。如果case关键字后的expression参数在使用全等(===)的情况下等于switch动作的expression参数,则执行statements参数中的语句。如果在switch语句外部使用case动作,则将产生错误,脚本不能编译。


3.continue


语法:continue


描述:动作;出现在几种类型的循环语句中;它在每种类型的循环中的行为方式各不相同。


在while循环中,continue可使Flash解释程序跳过循环体的其余部分,并转到循环的顶端(在该处进行条件测试)。在do while循环中,continue可使Flash解释程序跳过循环体的其余部分,并转到循环的底端(在该处进行条件测试)。在for循环中,continue可使Flash解释程序跳过循环体的其余部分,并转而计算for循环的后表达式(post-expression)。在for..in循环中,continue可使Flash解释程序跳过循环体的其余部分,并跳回循环的顶端(在该处处理下一个枚举值)。


4.Default


语法:default: statements


参数:statements任何语句。


描述:关键字;定义switch动作的默认情况。对于一个给定的switch动作,如果该switch动作的 Expression参数与case关键字后面的任何一个Expression参数都不相等(使用全等),则执行这些语句。


5.do while


语法:do {


statement(s)


} while (condition)


参数:condition要计算的条件。


statement(s)只要condition参数计算结果为true就会执行的语句。


描述:动作;执行语句,然后只要条件为true,就计算循环中的条件。


6.else


语法:else statement


else {…statement(s)…}


参数:ondition计算结果为true或false的表达式。


statement(s)如果if语句中指定的条件为false,则运行的替代语句系列。


描述:动作;指定当if语句中的条件返回false时要运行的语句。


7.else if


语法:if (condition){


statement(s);


} else if (condition){


statement(s);


}


参数:condition计算结果为true或false的表达式。


statement(s)如果if语句中指定的条件为false,则运行的替代语句系列。


描述:动作;计算条件,并指定当初始if语句中的条件返回false时要运行的语句。如果else if条件返回true,则Flash解释程序运行该条件后面花括号({})中的语句。如果else if条件为false,则Flash跳过花括号中的语句,运行花括号之后的语句。在脚本中可以使用else if动作创建分支逻辑。


8.for


语法:for(init; condition; next) {


statement(s);


}


参数:init一个在开始循环序列前要计算的表达式,通常为赋值表达式。此参数还允许使用Var语句。


condition计算结果为true或false的表达式。在每次循环迭代前计算该条件;当条件的计算结果为false时退出循环。


next一个在每次循环迭代后要计算的表达式;通常为使用递增或递减运算符的赋值表达式。


statement(s)在循环体内要执行的指令。


描述:动作;一种循环结构,首先计算init(初始化)表达式一次,只要condition的计算结果为true,则按照以下顺序开始循环序列,执行statement,然后计算next表达式。


9.For..in


语法:for(variableIterant in object){


statement(s);


}


参数:variableIterant作为迭代变量的变量名,引用数组中对象或元素的每个属性。


object要重复的对象的名称。


statement(s)要为每次迭代执行的指令。


描述:动作;循环通过数组中对象或元素的属性,并为对象的每个属性执行statement。


10.if


语法:if(condition) {


statement(s);


}


参数:condition计算结果为true或false的表达式。


statement(s)如果或当条件的计算结果为true时要执行的指令。


描述:动作;对条件进行计算以确定影片中的下一步动作。如果条件为true,则Flash将运行条件后面花括号({})内的语句。如果条件为false,则Flash跳过花括号内的语句,运行花括号后面的语句。使用if动作可在脚本中创建分支逻辑。


11.switch


语法:switch (expression){


caseClause:


[defaultClause:]


}


参数:expression任意表达式。


caseClause一个Case关键字,其后跟表达式、冒号和一组语句,如果在使用全等的情况下,此处的表达式与switch expression参数相匹配,则执行这组语句。


defaultClause一个default关键字,其后跟着如果这些Case表达式都不与switch expression参数全等匹配时要执行的语句。


描述:动作;创建动作脚本语句的分支结构。像If动作一样,Switch 动作测试一个条件,并在条件返回true值时执行语句。


12.while


语法:while(condition) {


statement(s);


}


参数:condition每次执行while动作时都要重新计算的表达式。如果该语句的计算结果为 true,则运行statement(s)。


statement(s)条件的计算结果为true时要执行的代码。


描述:动作;测试表达式,只要该表达式为true,就重复运行循环中的语句或语句序列。


(六)用户定义的函数
该部分的Action可以通过用户自己组合开发更具灵活的程序脚本。


1.call


语法:call(frame)


参数:frame时间轴中帧的标签或编号。


描述:动作;执行被调用帧中的脚本,而不将播放头移动到该帧。一旦执行完该脚本,局部变量将不存在。


2.call function


语法:object.function([parameters])


参数:object其中定义了函数的对象(可以是影片剪辑)。


function指定用户定义的函数的标识符。


parameters可选参数,指示函数所需的任何参数。


描述:动作;允许你在标准模式下,使用“动作”面板中的参数字段来调用用户定义的函数。


3.function


语法:function functionname ([parameter0, parameter1,...parameterN]){


statement(s)


}


function ([parameter0, parameter1,...parameterN]){


statement(s)


}


参数:functionname新函数的名称。


parameter一个标识符,表示要传递给函数的参数。这些参数是可选的。


statement(s)为function的函数体定义的任何动作脚本指令。


描述:你定义的用来执行特定任务的一组语句。可以在影片的一个地方“声明”或定义函数,然后从影片的其他脚本调用它。定义函数时,还可以为其指定参数。参数是函数要对其进行操作的值的占位符。每次调用函数时,可以向其传递不同的参数。这使你可以在不同场合重复使用一个函数。


4.method


语法:object.method = function ([parameters]) {


…body of function…


};


参数:object对象的标识符。


method方法的标识符。


parameters要传递给函数的参数。可选参数。


描述:动作(仅限标准模式);用于在标准模式下使用“动作”面板来定义对象的方法。


5.Return


语法:return[expression]


return


参数:expression要作为函数值计算并返回的字符串、数字、数组或对象。此参数是可选的。


返回值:如果提供了expression参数,则返回计算的结果。


描述:动作;指定由函数返回的值。return动作计算expression并将结果作为它在其中执行的函数的值返回。return动作导致函数停止运行,并用返回值代替函数。如果单独使用return语句,它返回null。


二、函数
函数是Flash MX中至关重要的部分,是完成复杂的程序操作的必要组合。


(一)常用函数
顾名思义,该部分的内容是介绍Flash MX中常用逻辑函数脚本集合。


1.escape


语法:escape(expression)


参数:expression要转换为字符串并以URL编码格式进行编码的表达式。


描述:函数;将参数转换为字符串,并以URL编码格式进行编码,在这种格式中,将所有非字母数字的字符都转义为十六进制序列。


2.eval


语法:eval(expression)


参数:expression包含要获取的变量、属性、对象或影片剪辑的名称的字符串。


描述:函数;按照名称访问变量、属性、对象或影片剪辑。如果expression是一个变量或属性,则返回该变量或属性的值。如果expression是一个对象或影片剪辑,则返回指向该对象或影片剪辑的引用。如果无法找到expression中指定的元素,则返回undefined。


3.getProperty


语法:getProperty(instancename , property)


参数:instancename 要获取其属性的影片剪辑的实例名称。


property影片剪辑的属性。


描述:函数;返回影片剪辑instancename的指定property的值。


4.getTimer


语法:getTimer()


描述:函数;返回自影片开始播放时起已经过的毫秒数。


5.targetPath


语法:targetpath(movieClipObject)


参数:movieClipObject对要获取其目标路径的影片剪辑的引用(例如,_root或_parent)。


描述:函数;返回包含movieClipObject的目标路径的字符串。此目标路径以点记号表示形式返回。若要获取以斜杠记号表示的目标路径,请使用_target属性。


6.unescape


语法:unescape(x)


参数:x要转义的十六进制序列字符串。


描述:顶级函数;将参数x作为字符串计算,将该字符串从URL编码格式(这种格式将所有十六进制序列转换为ASCII字符)进行解码,并返回该字符串。


(二)数学函数
该部分的Action帮助开发人员完成程序中的数学运算。


1.isFinite


语法:isFinite(expression)


参数:expression要计算的布尔表达式、变量表达式或其他表达式。


描述:顶级函数;对expression进行计算,如果其为有限数,则返回true,如果为无穷大或负无穷大,则返回false。无穷大或负无穷大的出现指示有错误的数学条件,例如被0除。


2.isNaN


语法:isNaN(expression)


参数:expression要计算的布尔表达式、变量表达式或其他表达式。


描述:顶级函数;对参数进行计算,如果值不是数字(NaN),则返回true,指示存在数学错误。


3.parseFloat


语法:parseFloat(string)


参数:string要读取并转换为浮点数的字符串。


描述:函数;将字符串转换为浮点数。此函数读取(或“分析”)并返回字符串中的数字,直到它到达不是数字(其初始含义为数字)部分的字符。如果字符串不是以一个可以分析的数字开始的,则parseFloat返回NaN。有效整数前面的空白将被忽略,有效整数后面的非数值字符也将被忽略。


4.parseInt


语法:parseInt(expression, [radix])


参数:expression转换为整数的字符串。


radix表示要分析数字的基数(基)的整数。合法值为2~36。此参数是可选的。


描述:函数;将字符串转换为整数。如果参数中指定的字符串不能转换为数字,则此函数返回NaN。以0开头的整数或指定基数为8的整数被解释为八进制数字。以0x开头的字符串被解释为十六进制数字。有效整数前面的空白将被忽略,有效整数后面的非数值字符也将被忽略。


(三)转换函数
该部分的Action是Flash MX用来处理内容格式转换的脚本集合。


1.Boolean(函数)


语法:Boolean(expression)


参数:expression一个可转换为布尔值的表达式。


描述:函数;将参数expression转换为布尔值,并以如下形式返回值:如果expression是布尔值,则返回值为expression。如果expression是数字,则在该数字不为零时返回值为true,否则为false。如果expression是字符串,则调用toNumber方法,并且在该数字不为零时返回值为true,否则为false。如果expression未定义,则返回值为false。如果expression 是影片剪辑或对象,则返回值为true。


2.Number(函数)


语法:Number(expression)


参数:expression要转换为数字的表达式。


描述:函数;将参数expression转换为数字并按如下规则返回一个值:


如果expression为数字,则返回值为expression。如果expression为布尔值,当 expression为true时,返回值为1;当expression为false时,返回值为0。如果expression 为字符串,则该函数尝试将expression解析为一个带有可选尾随指数的十进制数字。如果expression为undefined,则返回值为0。


3.String(函数)


语法:String(expression)


参数:expression要转换为字符串的表达式。


描述:函数;返回指定参数的字符串表示形式,规则如下所示:


如果expression为布尔值,则返回字符串为true或false。如果expression是数字,则返回的字符串为此数字的文本表示形式。如果expression为字符串,则返回的字符串是 expression。如果expression是一个对象,则返回值为该对象的字符串表示形式,它是通过调用该对象的字符串属性而生成的,如果不存在此类属性,则通过调用Object.toString 而生成。如果expression是一个影片剪辑,则返回值是以斜杠(/)记号表示的此影片剪辑的目标路径。如果expression为undefined,则返回值为空字符串()。


三、常量
该部分的aAction罗列出Flash MX中常用的常量脚本集合。


1.false


语法:false


描述:表示与true相反的唯一的布尔值。


2.newline


语法:newline


描述:常量;插入一个回车符(),该回车符在动作脚本代码中插入一个空行。newline可用来为代码中的函数或动作所获取的信息留出空间。


3.null


语法:null


描述:关键字;一个可以赋予变量或者可以在函数未提供数据时由函数返回的特殊值。可以使用null表示缺少的或者未定义数据类型的值。


4.true


语法:true


描述:表示false相反的唯一布尔值。


5.undefined


语法:undefined


描述:一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用返回特殊值undefined。动作脚本代码typeof(undefined) 返回字符串“undefined”。undefined类型的唯一值是 undefined。


当将undefined转换为字符串时,它转换为空字符串。undefined值与特殊值null相似。事实上,当使用相等运算符对null和undefined进行比较时,它们的比较结果为相等。


四、属性
用Flash MX制作或开发动画,其中必不可少的就是使用脚本定义所有movie的属性。


1.MovieClip._alpha


语法:myMovieClip._alpha


描述:属性;设置或获取由MovieClip指定的影片剪辑的Alpha透明度(value)。有效值为0(完全透明)到100(完全不透明)。如果影片剪辑的_alpha设置为 0,虽然其中的对象不可见,但也是活动的。


2.MovieClip._currentframe


语法:myMovieClip._currentframe


描述:属性(只读);返回由MovieClip指定的时间轴中播放头所处的帧的编号。


3.MovieClip._droptarget


语法:myMovieClip._droptarget


描述:属性(只读);以斜杠语法记号表示法返回MovieClip放置到的影片剪辑实例的绝对路径。_droptarget属性始终返回以斜杠(/)开始的路径。若要将实例的_droptarget属性与引用进行比较,请使用eval函数将返回值从斜杠语法转换为点语法表示的引用。


4.MovieClip._focusrect


语法:myMovieClip._focusrect


描述:属性;一个布尔值,指定当影片剪辑具有键盘焦点时其周围是否有黄色矩形。该属性可以覆盖全局_focusrect属性。


5.MovieClip._framesloaded


语法:myMovieClip._framesloaded


描述:属性(只读);从影片流中已经加载的帧数。该属性可确定特定帧及其前面所有帧的内容是否已经加载,并且是否可在浏览器本地使用。该属性对于监视大影片的下载过程很有用。


6.MovieClip._height


语法:myMovieClip._height


描述:属性;以像素为单位设置和获取影片剪辑的高度。


7.MovieClip._name


语法:myMovieClip_name


描述:属性;返回由MovieClip指定的影片剪辑的实例名称。


8._quality


语法:_quality


描述:属性(全局);设置或获取用于影片的呈现品质。设备字体始终是带有锯齿的,因此不受_quality属性的影响。


9.MovieClip._rotation


语法:myMovieClip._rotation


描述:属性;以度为单位指定影片剪辑的旋转。


10._soundbuftime


语法:_soundbuftime = integer


参数:integer在影片开始进入流之前缓冲的秒数。


描述:属性(全局);规定声音流缓冲的秒数。默认值为5秒。


11.MovieClip._target


语法:myMovieClip._target


描述:属性(只读);返回MovieClip参数中指定的影片剪辑实例的目标路径。


12.MovieClip._totalframes


语法:myMovieClip._totalframes


描述:属性(只读);返回MovieClip参数中指定的影片剪辑实例中的总帧数。


13.MovieClip._url


语法:myMovieClip._url


描述:属性(只读);获取从中下载影片剪辑的SWF文件的URL。


14.MovieClip._visible


语法:MovieClip._visible


描述:属性;一个布尔值,指示由MovieClip参数指定的影片是否可见。不可见的影片剪辑(_visible属性设置为false)处于禁用状态。例如,不能点击_visible属性设置为false 的影片剪辑中的按钮。


15.MovieClip._width


语法:MovieClip._width


描述:属性;以像素为单位设置和获取影片剪辑的宽度。


16.MovieClip._x


语法:MovieClip._x


描述:属性;设置影片坐标的整数,该坐标相对于父级影片剪辑的本地坐标。如果影片剪辑在主时间轴中,则其坐标系统将舞台的左上角作为(0, 0)。如果影片剪辑位于另一个具有变形的影片剪辑中,则该影片剪辑位于包含它的影片剪辑的本地坐标系统中。因此,对于逆时针旋转90的影片剪辑,该影片剪辑的子级将继承逆时针旋转90的坐标系统。影片剪辑的坐标指的是注册点的位置。


17.MovieClip._xmouse


语法:MovieClip._xmouse


描述:属性(只读);返回鼠标位置的坐标。


18.MovieClip._xscale


语法:MovieClip._xscale


描述:属性;确定从影片剪辑的注册点开始应用的影片剪辑的水平缩放比例(percentage)。默认为(0,0)。


19.MovieClip._y


语法:MovieClip._y


描述:属性;设置影片的坐标,该坐标相对于父级影片剪辑的本地坐标。同MovieClip._x。


20.MovieClip._ymouse


语法:MovieClip._ymouse


描述:属性(只读);指示鼠标位置的坐标。


21.MovieClip._yscale


语法:MovieClip._yscale


描述:设置从影片剪辑注册点开始应用的该影片剪辑的垂直缩放比例(percentage)。默认为 (0,0)。


五、对象
由于Flash MX的脚本编程方式符合OO(面向对象)概念,所以,对象的脚本集合也是开发者经常使用的。


(一)核心对象
1.arguments


arguments.callee


语法:arguments.callee


描述:属性;指当前被调用的函数。


2.arguments.caller


语法:arguments.caller


描述:属性;指进行调用的函数的arguments对象。


3.arguments.length


语法:arguments.length


描述:属性;实际传递给函数的参数数量。


4.Array


语法:new Array()


new Array(length)


new Array(element0, element1, element2,…elementN)


参数:length一个指定数组中元素数量的整数。在元素不连续的情况下,length参数指定的是数组中最后一个元素的索引号加1。


element0…elementN一个包含两个或多个任意值的列表。这些值可以是数字、字符串、对象或其他数组。数组中第一个元素的索引或位置始终为0。


描述:Array对象的构造函数;你可使用构造函数来创建不同类型的数组:空数组、具有特定长度但其中元素没有值的数组或其中元素具有特定值的数组。


5.Boolean


语法:new Boolean([x])


参数:x任何表达式。此参数是可选的。


描述:Boolean对象的构造函数;创建Boolean对象的实例。如果省略x参数,则将Boolean 对象初始化为具有值false。如果为x参数指定值,则该方法会计算它,并根据Boolean(函数)函数中的规则以布尔值返回结果。


6.Date


语法:new Date()


new Date(year,month [,date [,hour[,minute [,second[,millisecond]]]]])


参数:year一个0~99之间的值,表示1900年至1999年;如果年份不在上述范围内,则必须指定表示年份数的所有4位数字。


返回:整数


描述:Date对象的构造函数;构造一个新的Date对象,该对象保存当前日期和时间或指定的日期。


7._global


语法:_global.identifier


返回值:对包含核心动作脚本类的全局对象(例如String、Object、Math和Array)的引用。


描述:标识符;创建全局变量、对象或类。


8.Math


语法:Math.abs(x)


参数:x一个数字。


返回值:一个数字。


描述:方法;计算并返回由参数x指定的数字的绝对值。


9.Math.acos


语法:Math.acos(x)


参数:x一个介于-1.0~1.0之间的数字。


描述:方法;以弧度为单位计算并返回参数x中指定的数字的反余弦值。


10.Math.asin


语法:Math.asin(x)


参数:x一个介于-1.0~1.0之间的数字。


描述:方法;以弧度为单位计算并返回参数x中指定的数字的反正弦值。


11.Math.atan


语法:Math.atan(x)


参数:x一个数字。


描述:方法;计算并返回参数x中指定的数字的反正切值。返回值介于-pi/2~+pi/2之间。


12.Math.atan2


语法:Math.atan2(y, x)


参数:x一个数字,指定点的x坐标。y一个数字,指定点的y坐标。


描述:方法;以弧度为单位计算并返回y/x的反正切值。返回值表示相对直角三角形对角的角,其中x是临边边长,而y是对边边长。


13.Math.sqrt


语法:Math.sqrt(x)


参数:x一个大于等于0的数字或表达式。


描述:方法;计算并返回指定数字的平方根。


14.Number


语法:myNumber = new Number(value)


参数:value要创建的Number对象的数值,或者要转换为数字的值。


描述:构造函数;新建一个Number对象。


15.Object


语法:new Object([value])


参数:value要转换为对象的数字、布尔值或字符串。此参数是可选的。如果未指定value,则该构造函数创建一个未定义属性的新对象。


描述:Object对象的构造函数;新建一个Object对象。


16.String


语法:new String(value)


参数:value新String对象的初始值。


描述:String对象的构造函数;创建一个新String对象。


17.Super


语法:super.method([arg1, ..., argN])


super([arg1, ..., argN])


参数:method要在超类中调用的方法。


arg1可选参数,这些参数或者传递给方法的超类版本,或者传递给超类的构造函数。


返回值:两种格式都调用一个函数。该函数可以返回任何值。


描述:运算符:第一种语法格式可以用于对象方法体内,用以调用方法的超类版本,而且可以选择向超类方法传递参数(arg1…argN)。这对于创建某些子类方法很有用,这些子类方法在向超类方法添加附加行为的同时,又调用这些超类方法执行其原始行为。


第二种语法格式可以用于构造函数体内,用以调用此构造函数的超类版本,而且可以选择向它传递参数。这对于创建子类很有用,该子类在执行附加的初始化的同时,又调用超类构造函数执行超类初始化。


(二)影片对象
1.Accessibility.isActive


语法:Accessibility.isActive()


返回值:布尔值


描述:方法;指示屏幕阅读器程序当前是否处于活动状态。当希望影片在有屏幕阅读器的情况下行为方式不同时,可使用此方法。


2.Button.getDepth


语法:myButton.getDepth()


描述:方法;返回按钮实例的深度。


3.Button.enabled


语法:myButton.enabled


描述:属性;指定按钮是否处于启用状态的布尔值。默认值为true。


4.Button.tabEnabled


语法:myButton.tabEnabled


描述:属性;可以对MovieClip、Button或TextField对象的实例设置该属性。默认情况下它是未定义的。


5.Button.tabIndex


语法:myButton.tabIndex


描述:属性;使你可以自定义影片中对象的Tab键排序。可以对按钮、影片剪辑或文本字段实例设置tabIndex属性,默认情况下为undefined。


6.Button.trackAsMenu


语法:myButton.trackAsMenu


描述:属性;指示其他按钮或影片剪辑是否可接收鼠标按钮释放事件的布尔值属性。这将允许你创建菜单。你可以设置任何按钮或影片剪辑对象的trackAsMenu属性。如果 trackAsMenu属性不存在,则默认行为为false。 可以在任何时间更改trackAsMenu属性;修改后的按钮会立即采用新的行为。


7.myButton.useHandCursor


语法:myButton.useHandCursor


描述:属性;一个布尔值,当设置为true时,指示在用户用鼠标指针滑过按钮时是否显示手形光标。useHandCursor的默认值为true。如果useHandCursor属性设置为false,则将改用箭头光标。可以在任何时间更改useHandCursor属性;修改后的按钮会立即采用新的光标行为。可以从原型对象中读出useHandCursor属性。


8.System.capabilities.hasAudio


语法:System.capabilities.hasAudio


描述:属性;指示播放器是否具有音频功能的布尔值。默认值为true。其服务器字符串为 A。


9.System.capabilities.hasAudioEncoder


语法:System.capabilities.hasAudioEncoder


描述:属性;音频解码器的数组。其服务器字符串为AE。


10.System.capabilities.screenColor


语法:System.capabilities.screenColor


描述:属性;指示屏幕的颜色是彩色(color)、灰度(gray)还是黑白(bw) 的。默认值为color。其服务器字符串为SC。


11.Color


语法:new Color(target)


参数:target影片剪辑的实例名称。


描述:构造函数;为由target参数指定的影片剪辑创建Color对象的实例。然后可使用该 Color对象的方法来更改整个目标影片剪辑的颜色。


12._level


语法:_levelN


描述:属性;对_levelN的根影片时间轴的引用。你必须使用loadMovieNum动作将影片加载到Flash Player中以后,才可使用_level属性来定位这些影片。还可使用_levelN来定位由N所指定级别处的已加载影片。


加载到Flash Player实例中的初始影片会自动加载到_level0。_level0中的影片为所有随后加载的影片设置帧频、背景色和帧大小。然后影片堆叠在处于_level0的影片之上的更高编号级别中。


你必须为每个使用loadMovieNum动作加载到Flash Player中的影片分配一个级别。你可按任意顺序分配级别。如果你分配的级别(包括_level0)中已经包含SWF文件,则处于该级别的影片将被卸载并替换为新影片。


13._parent


语法:_parent.property


_parent._parent.property


描述:属性;指定或返回一个引用,该引用指向包含当前影片剪辑或对象的影片剪辑或对象。当前对象是包含引用_parent的动作脚本代码的对象。使用_parent来指定一个相对路径,该路径指向当前影片剪辑或对象上级的影片剪辑或对象。


14._root


语法:_root.movieClip


_root.action


_root.property


描述:属性;指定或返回指向根影片时间轴的引用。如果影片有多个级别,则根影片时间轴位于包含当前正在执行脚本的级别上。指定_root与在当前级别内用斜杠记号(/)指定绝对路径的效果相同。


(三)客户端/服务器对象
1.LoadVars


语法:new LoadVars()


描述:构造函数;创建LoadVars对象的实例。然后你可使用该LoadVars对象的方法来发送和加载数据。


2.XML


语法:new XML([source])


参数:source为创建新的XML对象而进行分析的XML文本。


描述:构造函数;创建一个新的XML对象。必须使用构造函数方法创建一个XML对象的实例之后,才能调用任何一个XML对象的方法。


createElement与createTextNode方法是用于在XML文档树中创建元素和文本节点的“构造函数”方法。


3.XMLSocket


语法:new XMLSocket()


描述:构造函数;创建一个新的XMLSocket对象。XMLSocket对象开始时未与任何服务器连接。必须调用XMLSocket.connect方法将该对象连接到服务器。


 



首先是CheckBox:
这个是最简单的啦。拖一个CheckBox到主场景内,实例命名,如 myCheckBox,在属性面板内可以设置CheckBox内的值:
Label:跟在CheckBox后面的注释。
Initial value:默认值,true为选中,false则反之。
Label Placement:right为文字在box右边,left为左边。
Change Handler:执行函数的名称。


通过 _root.myCheckBox.getvalue() 就可以获得CheckBox的值(true or false)。这个就是主要应用。其他常用属性如:
_root.myCheckBox.setvalue(boolVar) : 设置CheckBox的钩选与否。
_root.myCheckBox.getEnabled() : 只读的属性,返回true or false,就和普通的Mc的_visible差不多的属性。
_root.myCheckBox.setEnabled(boolVar) : 设置该CheckBox的可见与否。
_root.myCheckBox.getLabel() : 读取CheckBox的注释。
_root.myCheckBox.setLabel(LabelVar) : 修改CheckBox的注释。
_root.myCheckBox.setSize() : 设置宽度,用于文本注释很长的时候
_root.myCheckBox.setChangeHandler() : 这个属性比较重要,放在后面一起讲吧。


再来是RadioButton:
基本属性与CheckBox差不多,多了两个属性:
GroupName :设置RadioButton组。用过WEBForm的都该知道这个RadioButton有个组别的吧。
Data : 这个RadioButton的值。CheckBox没有这个用这个属性是因为他没有组别。
AS的应用也多出了:
_root.myRadioButton.getGroupName();
_root.myRadioButton.setGroupName(StringVar);
_root.myRadioButton.getData();
_root.myRadioButton.setData();
_root.myRadioButton.setState(boolVar) : 相当于上面的setvalue(),设置是否被选中。



DropDownlist:
基本属性:
Editable : 是否可以编辑,就是说是否可以作为一个input。
Labels : Label 组
Data : 对应的 Data 组
Row Count : 下拉列表最多可以多少行,大于这个参数就出现滚动条。
Change Handler : 同上


几个常用的AS应用:
_root.myDropDownList.getvalue() : 获得选择的 Label
_root.myDropDownList.getData() : 获得选择的 Label 对应的 Data
_root.myDropDownList.addItem(StringVar) : 增加下拉列表的选项。
_root.myDropDownList.removeItem(IntVar) : 去掉下拉列表的选项,IntVar 为该选项所在的索引,即列表的列数,第1列为0。
_root.myDropDownList.addItemAt(IntVar,StringVar) : 在指定的位置加入选项列。
_root.myDropDownList.removeItemAt(IntVar) : 去掉索引为IntVar的列。
_root.myDropDownList.removeAll() : 去掉所有的选项。
_root.myDropDownList.replaceItemAt(IntVar,StringVar1,StringVar2) : 用StringVar1代替索引为IntVar的列的Label,String2代替Data, String2为可选参数。
_root.myDropDownList.getSelectedIndex() : 获得选择的选项的索引。
_root.myDropDownList.setSelectedIndex(IntVar) : 设置当前的选项到索引 IntVar 。
_root.myDropDownList.getLength() : 获得选项数目。
_root.myDropDownList.setEditable : 设置可否编辑选中列。
_root.myDropDownList.getRowCount() : 获得最大列表行数。
_root.myDropDownList.setRowCount(IntVar) : 设置最大列表行数。
_root.myDropDownList.getSelectedItem() : 返回一个对象,可以这么用 _root.myDropDownList.getSelectedItem().Label



ListBox 与 DropDownList 具有一样的属性,基本属性内没有RowCount属性,AS仍然可以控制。
Select Multiple : 设置是否可以多选。
AS应用相应多了
_root.myListBox.getSelectMultiple() : 是否多选,返回布尔变量。
_root.myListBox.setSelectMultiple(boolVar) : 设置是否可多选。
_root.myListBox.setSelectedIndices(ArrayObject) : 将数组读入ListBox



ScrollPane :
基本属性:
Scroll Content : 填充内容,mc实例名。
Horizontal Scroll :横向滚动条。是/否/自动
Vertical Scroll : 竖向滚动条。是/否/自动
Drag Content : 设置是否可直接拖动。
几个比较常用AS应用:
_root.myDisplay.getScrollContent() : 返回Scrollpane内的Mc对象。
_root.myDisplay.loadScrollContent(URL) : 读取一个swf或者jpg文件到ScrollPane内。
_root.myDisplay.refreshPane() : 刷新ScrollPane内的滚动条。
_root.myDisplay.setDragContent(boolVar) : 设置可否直接拖动ScrollPane内的内容。
_root.myDisplay.setScrollPosition(x,y) : 设置ScrollPane内的对象的位置。



ScrollBar
基本属性
Target TextField : 目标文本域的实例名,注意是实例名而不是变量名。
Horizontal : 是否横向
AS 应用:
_root.myScrollBar.getPosition() : 获得当前的滚动条按钮在滚动条中的位置,返回一个整型。
_root.myScrollBar.setScrollTarget(TextFileInstanceName) : 将文本框对象与滚动条绑定。
_root.myScrollBar.setScrollProperties (IntScrollLength,IntPerScrollGoes,IntMaxScorllNumber) : 设置滚动条的按钮的长度,滚动的幅度,滚动条的最大容量。



最后讲一下方法setChangeHandler()


_root.myComponents.setChangeHandler(functionName, [location])
参数:
functionName : 函数名
location : 该函数所在的timeline,默认为 this


这个方法是修改执行函数。如上面这句话
_root.myScrollBar.setChangeHandler(“myFunction”);
function myFunction() {
//some Code Here
}
一旦myScrollBar的状态发生改变(我是这么理解的)就执行myFunctoin.

                                                       多媒体CAI的设计方法与发展趋势综述
                                                                                      □ 阳书敏[1]  罗杨洁2
                                                                                               (1武汉大学  430072  2 东北师范大学130024)
摘要:本文结合《灌溉与排水工程学》CAI教学系统的研制开发经验,客观分析了传统CAI软件存在的不足,并详细说明了多媒体技术在CAI系统中的重要性;全面阐述了MCAI系统的开发周期和一般方法,讨论了研制开发中的若干关键技术和注意事项。
关键词:多媒体;CAI;软件工程;远程教学;数据结构
前言
        计算机辅助教学(CAI,Computer Assisted Instruction)是一种新兴的先进教学手段,是以计算机的各项功能和特点代替或部分代替教师面向学习者,促使学习者实现有效学习的教学形态。随着计算机技术的进步,我国的CAI应用领域也不断扩大和深入,尤其是90年代以来多媒体技术(Multiedia)的快速发展并逐步成熟,多媒体化已成为CAI开发的主流。多媒体CAI(MACI)以清晰美观的人机界面,集文字、图像、动画、音频、视频于一体的优势,为教育提供了逼真的表现效果和丰富的教学环境。本文以《灌溉与排水工程学》CAI软件的研制开发为例,论述MCAI软件的设计方法,并展望其发展趋势。
1多媒体和CAI的结合
         经过几十年的不断发展,传统CAI软件在知识和技能的获取方面发挥了较大的作用,有助于提高全国的教育质量和水平。然而实际应用情况表明,由于开发环境和工具的相对落后使得这些CAI软件在不同的程度上存在如下问题:
      (1) 软件的辅助层次较低,局限于知识和技能的获取水平,不能应用知识解决问题,更无法创造性地解决问题;软件的人机交互界面不佳,学习效率较低。
      (2) 软件的表现手法单一,一般仅限于文本、图形和少量的动画,使用者没有或很少脱离系统对进程的控制而直接获取知识的自由。这种方法在本质上和和课本并没有太大的区别。
      (3) 软件的研制开发缺乏专业教师和学生的全程参与,教师在很大程度上不了解学生的情况,学生在碰到问题时,也不能向老师求助,师生之间没有通畅的交流,这导致CAI软件的适应性较差。
      (4) 缺乏网络支持和更新途径。绝大多数CAI软件是运行于单机环境下的,无法利用网络在知识更新上的方便和快捷优势。这样的CAI不便于内容的更新和维护,是没有生命力的。
      (5) 缺乏智能性。不具备一定智能性的CAI系统,无法按照学生的认知水平和模型选择最合适的学习内容,也就无法达到教育学所要求的个别化教学和启发式教学。这是各种CAI都需要进一步加强的功能。
而计算机多媒体技术的产生和发展,正是为人类进行多维化的思维和学习,提供了一种能对多种载体(媒体Media)和多种存储体上的信息进行处理的最佳途径。 它为教学活动提供了一种全新的工具和环境,从根本上改变了人们教与学的方式,也给传统的CAI技术注入了新的活力。我们将其总结为:
      (1) 多媒体的应用使学生进入了视听觉多感观并用,抽象逻辑思维与具体形象思维共同参与的交互式学习动态,使学生的思维活动易于突破抽象逻辑思维的难点和局限,使教学活动更加符合人的自然思维习惯,从而获得更好的教学效果和更高的学习效率。
现代教育学的实践证明:学生获得知识若仅仅依靠听觉,3小时后保持70%,3日后保持10%;若仅仅依靠视觉,3小时后保持72%,3日后保持20%;若综合依靠视觉和听觉,则3小时后保持85%,3日后仍可以保持65%。可见效果是很显著的。
      (2) 多媒体的运用使CAI的模式更加多样化,产品更加丰富,使用范围更加广泛。由于超文本(Hypertext)/超媒体(Hypermedia)技术的实现,使教学软件由封闭式变为开放式,由计算机控制变为老师(学生)自主控制。另外以多媒体为基础的虚拟现实(Virtual-Reality)概念和技术的出现,能将许多学生难以想象场景带到他们面前,大大开拓CAI的使用范围。
       (3) 多媒体操作的高级化使其在CAI软件中大量使用成为可能。面向对象技术对多媒体的封装和可视化编程语言对多媒体的有效控制,使高质量MCAI软件的制作变得相对简单。这样MCAI的开发者能够从复杂冗余的程序设计中解放出来,而致力于多媒体素材和脚本的创作,在内容和表现上进一步提高MCAI的层次和水平。
      (4) 多媒体和数据库技术的结合,可以提高CAI综合利用多媒体信息的程度;和网络技术的结合,则为每一个学生提供几乎无限的信息来源接口,让学生和教师、学生和老师之间跨平台、跨时空交流,从而扩大了知识面,提高了分析和解决问题的能力。
可见,与传统的CAI相比,MCAI技术既可支持“学”的方面,也能支持“教”的方面,CAI软件的改进和开发势在必行。现在,传统的教师主讲的教学模式正受到多媒体教学模式的极大冲击,可以预见,今后多媒体技术必将越来越多地应用于现代教学实践中,并将推动整个教育事业的发展。
2MCAI的开发周期
         MCAI软件是属于应用软件的范畴,按软件工程学的一般观点,其开发历程就是一个软件开发周期。多媒体软件开发的通用模式是由多媒体专家Brian Blum提出的,是一种有分析、设计(指导设计与交互设计)、实现测试与评价四个层次的开发模型。适用于MCAI开发的模型流程图如图1所示。
2.1     分析阶段
        主要包括确定MCAI的目的和内容、多媒体的组织以及开发环境等任务。
MCAI开发不仅仅是通常意义上的软件开发,它的目的更多的考虑是如何让使用者实现其教学的目的,即学生不但能从教师那里直接获取知识,更重要的是从计算机上查询符合自己实际的知识,不被其它影响自己学习的信息所干扰。因此,它要求开发者把开发的重点放在怎样使所开发的MCAI实现内容安排合理,能实现传统教学方式不能实现的效果。可以选择课程中的重点和难点,比较抽象难以表现的内容,或对培养学生有重要作用的知识点等,例如对土壤水分运动模型,就可以通过图形和动画模拟出来,从而达到计算机辅助教学的真正目标。
        一旦确定了教学内容、教学过程和教学方法,就需要合理的运用各种媒体信息,并加以构造性的组合,从而达到预期目标。例如用动画描述演变过程,图形表示抽象的事物属性,背景音乐烘托优良的上课环境等。这里的构思是一个全局的概念,在具体的脚本设计中随时调整。
图1    MCAI开发流程图
        最后,要根据开发目标和开发者的实际选择开发环境。有两大类开发方式,一是程序设计语言,如Visual Basic,Visual C++,Delphi,Java等具备多媒体集成和处理能力的可视化编程语言,这种方式在软件的设计上有很大的灵活性,可以设计出具有独特风格的新产品,但需要设计人员有很高的程序设计技术,而且开发周期长,工作量大。另一种是著作工具,如Macromedia Author ware,Asymetrix Tool Book等,它们都以可视化形式向用户提供一个强大的多媒体数据开发集成平台,需要的用户代码很少,所以开发者可以致力于软件的宏观设计和脚本设计,并可以缩短开发周期。它的缺点是不便于数据的修改和维护,不易实现多媒体数据的资源共享。鉴于此和开发经验,我们推荐两种方法相互结合的方法:全局用Visual Basic组织,微观部分通过著作工具(如Authorware,Flash等)实现。按照这种思路开发的产品在功能和层次水平上已经得到相关专家的认可,证明该方法是可行的。
2.2     设计阶段(指导设计与交互设计)
        分析之后,就要作总体方案的设计,该阶段的任务按先后可总结为教学指导设计、交互设计和脚本设计。
        教学指导设计是指根据课程的教学目标以及相应的教学内容选择的一种合适的教学模式。MCAI软件教学模式地选择要充分考虑教师的需要,给教师较大的自由度,能按教师要求组织课堂教学,同时兼顾充分发挥计算机的优点和学生的主观能动性,克服传统教学手段的不足。
交互式设计的主要内容是人机界面的交互。一般采用反应式交互,交互方式有按钮、菜单、目标区域和超链接等。对教学中的每一模块可以采用顺序编排,若采用超链接,则需设置导航工具。交互设计的具体方式在脚本中用语言实现。
        脚本设计是系统分析到软件设计的中间环节,是软件开发的直接依据。脚本设计的内容是将课件的教学内容、教学模式进一步细化,具体到课件的每一屏的呈现信息、各媒体地组织、交互方式和学习过程的控制。脚本设计是一项创造性的劳动,既要体现课件系统设计的思想和要求,又要对课件开发给予有力的支持。我们认为脚本设计应遵循以下原则:吸引学生注意力,激发学生兴趣;直接阐明教学目标,突出重点;增强学习的主动性,实时反馈等。
2.3     实现与测试阶段
        该阶段要完成多媒体素材的制作、软件代码编辑和程序调试等任务,是MCAI开发的核心环节。
MCAI的应用包括许多领域的各个方面,不可能仅依靠计算机专业人员,而应是各类专业人员密切配合的结果,一般需要以下几类人员:媒体制作员,主题专家,美术音乐创意人员,交互媒体创作人员和软件制作人员。各类人员要相互协作,交叉设计,为MCAI做好前期准备。
除了文本、图形、图像外,我们着重说明以下素材的制作过程:
        音频:音频素材一般分两种,一是用于讲解教学内容的解说词,由录音机录下,通过音频卡采集,并转化为.wav格式文件,为了节省存储空间多压缩成MP3格式;二是用于烘托气氛的背景音乐,多从各种CD上摘录下后通过剪切、拼接后形成。
        视频:视频素材用于一些具有试验和实习环节的课程中,如农水课程中的渗流试验。多是把摄像机节目通过视频型号采集卡收集,再转换成.AVI格式文件,然后用Premiere等软件编辑处理后,在集成时插入课件中。
        动画:动画素材一般是通过计算机软件人工制作的,用于模拟现实中很难直接观测到的现象,如微观运动、高速或低速运动等。制作动画时要用到简化、夸张、形象等艺术手法,必要时可以通过人机交互设置其属性参数,到达主动控制的程度。二维动画可由Flash,Director等软件制作,三维动画要用到3DS Max 等。制作成型的动画单独测试通过后就可以被MCAI调用。
        在MCAI软件系统中,要实现多媒体元素的回放,必然涉及到多媒体设备的访问,所以除了一些必要的技术处理外,最关键的部分是程序与多媒体数据的接口处理。为了介绍方便,我们对音(视)频和Flash动画这两种最重要的多媒体元素分别说明。
       (1) 音(视)频
 在Visual Basic可视化编程环境中,访问多媒体数据的方式有API接口(Application Programming Interface)和多媒体控件两种。从调用灵活和执行效率的角度考虑,笔者推荐采用API方式。在API中,MCI(Multimedia Control Interface,多媒体控制接口)是多媒体设备和程序的标准控制接口,它覆盖了音频(Audio)、视频(Video)、影碟机(DVD)等主要多媒体设备,而且是与设备无关的。通过MCI,多媒体应用程序可以控制和使用多媒体设备和文件。为了能够使用mciSendString函数发送命令字符串,先在程序最前面显示声明API函数的原型:
Private Declare Function mciSendString Lib “winmm.dll” Alias “mciSendStringA” (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
        然后即可在程序中任何地方使用。例如播放视频 tvdemo.avi的代码段如下:
                Dim rc as Long
                rc=mciSendString (“Play TvDemo.avi”,” ”,255,0)
       (2) Flash动画
         Flash动画一种高级图形动态表现技术(Shockwave技术),并且是基于流(streaming)的,形式丰富而文件量很小,非常适用于MCAI的制作。通过使用Macromedia公司提供的Shockwave Flash插件,很容易在软件中实现点对点调用。以回放动画demo.swf为例说明:(先在窗体中添加一个Shockwave Flash控件,名为shockwave1)
                Shockwave1.Movie = demo.swf
                Shockwave1.Playing = true
        上面两句代码即可在窗体中回放Flash动画,非常简洁明了。
        当然,多媒体元素的软件实现还有很多其它的技术,和软件框架的衔接以及MCAI界面的交互式都要涉及到一些程序设计方面的知识,我们这里就不一一介绍。对软件设计的思想,按照面向对象特性,模块的编写和调试应该是同步的,调试的主要目的是使软件的初步设计进一步完善,重点是增强系统的通用性和容错性,这一点对MCAI软件显得尤为重要。
2.4     评价阶段
         MCAI软件是一种电子教材,不允许在内容上出现任何误导,其审定也是一个相当严肃的过程。MCAI的初稿(α版或β版)制作好之后,首先应在小范围内试用,根据反馈意见对存在地问题进行必要的修改,然后再请有关专家从教学性能和软件性能两方面进行现场评估。教学性能方面主要看教学目标是否合适,教学内容是否符合有关要求,教学手法是否符合教学规律和因材施教的原则,整个教学过程是否有利于激发学生兴趣和主动性,提高教学效率。软件性能方面主要指MCAI在多媒体的综合应用和所采用的交互式教学手段,以及对网络环境下应用和管理的支持能力上是否满足预定要求,这都需要从技术上予以严格的鉴定。
在软件评价过程中,对专家、教师和学生提出的意见结合软件实际,发现问题都要及时修改,力争使MCAI的实际水平尽可能满足各方面的要求。评价通过后的MCAI可以正是发布推广使用。有条件时,可以综合考虑用户使用过程中积累的问题,通过软件局部或整体的重新设计,将软件进一步升级。
        3MCAI的最新发展
        如今,科学技术发展的综合化和信息化,拓宽了MCAI的发展空间,呈现出百花齐放的态势。技术工作者更重视将各种技术融合起来,取长补短,以取得更好的教学效果。目前,国内外有以下几种研究值得瞩目,因为它可能就代表着MCAI的最新发展趋势。
      (1) 智能CAI和智能教育系统
        智能CAI(Intelligent CAI)是将人工智能技术用于CAI的成果。人工智能专家M.I.Mccalla认为人工智能用于教育事合乎自然的选择。它能将教学内容和教学策略分开,根据学生的认知模型提供的信息,通过智能系统的搜索与推理,动态生成适合于个别化教学的内容与策略;通过对全体学生出现的错误分布统计,智能诊断机制将向教师提供教学重点、方式、测试重点、方式、题型的建议;智能为教师提供友好的教学内容、测试内容、维护界面,无需改变软件的结构即可调整教学策略;通过对学生认知模型、教学内容、测试结果的智能分析,向教学督导人员提供对任课教师教学业绩评价的参考意见。ICAI在某种程度上更能体现教学中的科技成分,但开发难度大,成本较高,还处于试用阶段。
        目前从人工智能领域兴起的一个分支称为智能教育系统ITS(Intelligent Tutoring System),特点是把整个教学作为研究对象,增加了学生模块和教学策略模块。它的学习模式灵活,能够允许学生在一定范围内进行控制,及时纠正某些欠缺的知识,以更自然的方式同学生交流。虽然ITS还有一些关键的技术问题没有得到很好的解决,大面积应用还很少见,但它的发展前景是很广阔的。
      (2) 网络CAI
        网络CAI(Network Based CAI)是伴随着信息化而产生的,体现在分布式教学和跨时空的信息索取。自从“信息高速公路”的概念提出以后,它就是人们关注的焦点,网络对CAI的意义一直为人们所肯定。通过网络可以进行在线(Online)教室和远程教育(Distance Instruction),使学习者不必在教室就能获得合适的知识。教师可以广播教学信息,进行个别辅导和小组讨论,甚至利用视频电视系统进行“远程可视化教学”,将教学由封闭式变为开放式。
随着网络技术的改进和Internet的普及,NBCAI在国内外都有了新的进展。借助于网络的支持,再加上本身技术的不断完善,CAI的发挥的作用会越来越大。
      (3) 教学信息集成系统
教学信息集成(Instruction Information Integration,简称3I)是最近国外出现的新的教学思想和方法技术体系。3I的核心是集成化的教学信息库,包括教学内容、教学控制和反馈信息,在一个人机集成的教学环境下实现。同时也将网络和协同学习(Collaborative-Learning)的概念引入到教学中,充分发挥计算机的协同工作能力。可以说,3I是一种集大家之所长的技术,所以,以现有的CAI成果为基础,集成教学理论和各种信息技术、发展教学信息集成体系,在技术上是可行的。这是3I技术的优点,是CAI的一个重要发展方向。
4结语
        总之,MCAI的研制与开发是一个庞大的系统工程,需要理论和实践的指导。我们应当遵循科学的开发过程和方法,不断积累经验,密切关注计算机领域的最新研究成果,普及和推广MCAI在教学中的应用,为我国的教育事业做出应有的贡献。
参考文献
[1]    武祥树. CAI的基础研究和技术应用[M]. 北京:清华大学出版社, 1997.
[2]    张崇喜. 素质教育与课堂教学改革[J]. 教学理论语实践, 1998.
[3]    胡晓峰,吴玲达等. 多媒体系统原理与应用. 北京:人民邮电出版社,1995.
[4]    N.P.Darocha, L.M.Pereira. Remote Learning and Training Service: How Disabled People can use Multimedia App. Proc of ED-Media:675.


 

巧用Word“修订功能实现网上作业批改


                            作者:张娟玉1 , 孟涛2


摘要:Word的文字处理功能非常强大,但大多数使用者仅仅停留在打字、编辑和排版的文字处理阶段。文章就教师或学生通过网络实现网上作业批改、学生相互审阅、学习者选择性接受批改的实例,详细介绍了在Word 2000Office XP中巧用修订功能的基本方法,以此提醒教师和学生们去发掘、尝试和使用Word的其它强大功能。
关键词:网络教学; Office XP Word 2000
中图分类号: G434 文献标识码:A   中国电化教育


 


Word作为计算机的基本应用软件之一,已被普遍安装在计算机上,且使用率很高。但现阶段,大多数Word使用者还仅仅停留在打字排版的文字处理阶段。实际上Word的功能是非常强大的,它根据人们处理信息的实际,提供了许多便捷的、人性化的小工具,且都具备操作简单、使用方便的特点。比如Word 修订这一工具,在网络教学中就非常实用:利用修订功能,教师可以在word中对学生的作业进行批改(或学生之间相互审阅),而保留学生的作业原貌,学生收到老师批改好的作业后,对老师所作的修改一目了然,而且学生可以选择性地接受老师所作的修改。有利于开展个别化学习,培养学生学习的自主性、独立性以及创造性思维能力。应该说这比传统的纸质批改作业更胜一筹,而这一切都只需在网络中利用word修改功能进行。
一、Word“修订功能在网络教学中的作用
1
.教师利用Word“修订功能实现无纸化网上作业的批改
   
网络教育越来越受到人们的重视,网上作业递交成为必然趋势。学生利用Word完成自己的作业,然后在网上通过E-mail等形式发送给老师,老师接收到作业后,能不能象对待纸质作业一样,也用红笔对网上作业进行圈点呢?运用Word 修订工具,便可以完全实现:教师对学生作业所作的修改能以不同的格式显示出来,添加的内容显示带有下划线,字体颜色不同,删除的内容则中间有一删除线,与传统的批改作业格式相似,且更清晰,学生一看便清楚教师所作的修改。
2
.学生利用Word“修订功能实现无纸化网上作业的相互审阅
   
小组互助学习是基本的教学方法。传统班级授课制教学中,学生之间可以通过作业本的相互传递来审阅对方的功课。在网络教育中,学生之间的相互交流也是必须的:学生在计算机上完成Word文档格式的作业之后,可以通过网络将自己作业发送给同学,审阅者利用Word “修订功能方便进行相互修改。该功能不仅可以在原文件中显示所作的修改,而且只要把鼠标放在修订的内容上便可以显示出修订者和修订时间等基本信息。学生在收到回复来的作业时,还能对审阅者的基本参数心中有数。因此,在网络中开展小组协作学习时,通过Word “修订功能突破地域和时间的限制实现小组互助学习,在培养学生认知技能方面和创新思维方面,比通过纸质作业实现学生间学习交流更具优势。
3
.学生巧用Word“修订功能实现网上作业审阅结果的选择性接受
   
对于反馈回来的已经修改好的Word文档格式的作业,学生可以对老师或同学修改过的内容进行选择性的接受,即学生可以选择接受修订者对文档所作的修改,也可以保留自己的看法而拒绝接受所作的修改:可部分地接受,也可全部接受。也就是说,Word“修订功能增强了学生学习的自主性和独立性:有利于学生独立学习能力的提高,有利于学生创新思维能力的培养,有利于学生学习个性化的形成,有利于个别化教学的开展。


二、Word 2000修订功能的实现
1
.教师或同学利用网络对作业进行修改或审阅
   
打开需要审阅或修改的Word文件,依次点击word下拉菜单栏中的工具”——“修订”——“突出显示修订项目,此时弹出突出显示修订栏目的对话框。选择编辑时标记修订在屏幕上突出显示修订,计算机对选中项的前端自动以标记。如果只只需要在网上批注,选中这两项即可,若需要在打印时也突出标记,则将第三项在打印出的文档中突出显示修订同时选中。选择完毕,点击确定即可开始对已经打开的Word文件进行修改或审阅。
   
如果是多人对同一作业进行修订或审阅,为区别不同审阅者的标记,还需要对修订的格式进行设置(如同不同的修订者持不同颜色的笔对同一作业进行修改)。此时,在突出显示修订栏目的对话框中点击选项按钮进入修订格式设定栏目对话框。审阅者可以根据自己的风格,设置不同类型的删除标记线和标记颜色,也可以设置不同类型的插入文字标记线和文字颜色。修订格式的默认风格是:删除线和插入文字的标记线都是单下划线,红色;删除的文字和新插入的文字都已红色标记。
   
以将春风又过江南岸,明月何时照我还修改成春风又绿江南岸,明月何时照我还?为例:在文档中,要将改成绿,并在句末加上标点符号。修改过程与普通的Word文件编辑没有任何区别,只是计算机自动将修订者增加的内容以和不同于原文的字体颜色和下划线显示,删除的内容以不同于原文字体颜色的删除线显示。若将鼠标移到所作修改的文字上,计算机还会显示修订者的相关信息,包括修订者(计算机用户名)、修订时间及修订内容。修改行的左边会显示一条醒目的竖线,即用修改过的行标记来提醒原作者注意。在颜色选择时如果选择作者,则按照不同修订者显示不同的颜色,一般第一修订者所作修订显示为红色,第二修订者的修改为蓝色。如果选择了某一种固定的颜色,则所有修订者所作修订都以同一颜色显示。这里所指的修订者是指安装Office时输入的用户名,一般一台计算机对应一位修订者。

2
.学生对教师或同学修改或审阅作业结果的选择性接受
   
老师或同学将审阅或修改好的作业通过网络返回给学生后,学生所看到的是用不同颜色批注过的Word文件(如同教师批改过的作业本)。学习者可以根据自己的见解,选择性的对老师或同学的修改采取认同接受或坚持己见而拒绝的学术态度,非常方便开展个别化教学。在培养学生学习的自主性、独立性以及创造性思维能力等方面,甚至超过了以纸张作业本递交作业的教师——学生、学生——学生之间的学习交互方式,为广大学习者所青睐。
仍旧以上述文件为例,其实现方法如下:首先打开审阅过的Word文件,点击工具栏下拉菜单,进入修订,会看见接受或拒绝修订项目。操作过程是:依次点击工具”——“修订”——“接受或拒绝修订进入。
进入后,将出现接受或拒绝修订对话框,右边表示的是审阅选框,即审阅时的状态。在文件格式上,有三种方案可供选择:选择突出显示所做的修订,则所作修订与原文不同格式显示;如果选择不突出显示所做修订,则修订与原文同一格式显示;选择原始状态,则保持原文,所作的修改都不显示。在文件内容方面,也有三种方案供学习者选择:如果学习者想逐一查看,则点击查找按钮,查找到第一处修改:的删除,点击接受按钮,则字消失。光标自动查找到下一修订处,即绿字,点击接受,则绿字显示格式与原文相同。可以用“←”“→”逐一进行向上查找和向下查找至全文结束。如果学生将文件全部审阅完毕,感觉对修改很满意,则可以直接点击全部接受,则全文格式不变,内容是修改过后的内容。当然,学习者如果感觉全文修改的不好,想全部保留自己原来的观点,可以选择全部拒绝,则全文不做任何修改。


 


三、Office XPWord“修订功能的实现
   
Office XP中,对Word修订的功能进行了拓展,主要表现在呈现的方式上有了变化,出现了四种状态。另外,还增加了几项新功能,如审阅窗格将文档所作的修改全部列于页面下方,新建批注使得修改者可以在文章中加入批注,声音批注则是在文档中录入修订者的语音批注等。其实现方式和步骤与Word2000大同小异,只是在对话框的设定方面,要根据实际设定;在修改文件的呈现方式方面,有了一些变化,可参照Word2000“修订功能的实现步骤来模仿操作。
   
Word 2000“修订功能在网络教学中完全可以渗透教学交互活动的各个环节:小到作业批改,大到论文审阅;可以是文字,语言,也可以是数学公式,几何图案……,只要是Word文件,都可以实现网上修订。已经广泛使用的Word文字处理工具还有许多功能未被教师和学生们使用,比如它的翻译功能,相当于一本超文本英汉大词典,可以输入中文或英文进行翻译。另外,还可以在Word中利用公式进行计算等等。所以,在网络教育不断发展的今天,Word在教学中发挥的作用在不断增强,我们不能简单的将Word看成是一个仅仅只能用来处理文字的排版、打字的工具,它还有许多优秀的功能等待我们去发掘、尝试和使用。

http://202.101.42.123:81/movie/565344353/20040930/%c1%b5%c9%cf%ce%d2%d6%f7%c8%cb/lianswzr.rm




http://www.dns.sc.cn/movies/dongzuo/sylha.rm?C82B8E15D2DAACDD8B4CBDAEBB8DCDCB/十一罗汉1.rm


http://www.dns.sc.cn/movies/dongzuo/sylha.rm?C82B8E15D2DAACDD8B4CBDAEBB8DCDCB/十一罗汉2.rm


 


[领衔主演] 米拉·乔沃维奇 Michelle Rodriguez 艾力克·马毕斯 James Purefoy
[影片类型] 动作片
[影片级别] 普通电影
[出产地区] 欧美地区
[影片长度] 100分钟
[影片介绍]
艾丽丝(米拉·乔沃维奇 饰)从第一集的生化丧尸中逃离,可是她却依然逃不出生化危机的恶梦。经过保护伞公司地下生化实验室的改造,她被赋予了超人的力量速度和感知能力,现在她必须担负起保护人类的工作,继续和丧尸的战斗。
生化病毒仍然在拉科恩城内肆虐蔓延,那些感染病毒的丧尸也成为威胁整个人类的因素,必须在它们更加强大之前找到病毒的来源和有效控制它的方法,以解决整个人类陷入基因突变的绝境。为了这个目的,同时也是为了找出和拯救拉科恩城内可能幸存的同胞,艾丽丝和刚刚遭到降职处分的特种防卫队队员吉尔(西娜·吉罗瑞 饰)、以及佩顿(雷萨克·艾多提 饰)、L.J.(迈克·埃普斯 饰)、尼克莱(萨克·华德 饰)以及队长卡洛斯(奥迪德·弗尔 饰)组成调查组,再一次深入到拉科恩城腹地。

除了面对丧尸大军、变种怪物,他们遇到了更加强大的敌人,这个被称为“复仇邪神Nemesis”的怪物(马休·泰勒 饰)是第一集中受伤的麦特在接受保护伞公司的“耐密斯计划”之后变异而成,它被输入了毁灭一切生物的指令,并且它还拥有强大的电磁炮和火箭弹拥有惊人的破坏力。


http://vod.sxty.com.cn/movie/shenghuaweiji/shenghua.asf


http://www.jdwhw.com/real/tv/f/dmzs-1.rm


http://www.jdwhw.com/real/tv/f/dmzs-2.rm


 


rtsp://221.233.70.212/sp2/niangge/1.rm


rtsp://221.233.70.212/sp2/niangge/2.rm


 


http://222.83.0.4/wushanyunyu.wmv


 


http://61.139.76.26/dvd1/new/巴黎野玫瑰/巴黎野玫瑰a.rmvb


http://61.139.76.26/dvd1/new/巴黎野玫瑰/巴黎野玫瑰b.rmvb






http://218.84.106.245/film/dzp/6238a.rm


http://218.84.106.245/film/dzp/6238b.rm






归类于: 音乐 — 迁客 @ 1:46 pm 评论(0)







文 化:


  中  国  文  化


文化的定义


  正如关于人类的起源有很多的说法一样,关于文化的定义也有很多。我们引用泰勒的经典定义:文化,就其在民族志中的广义而论,是个复合的整体,它包含知识、信.艺术、道德、法律、习俗和个人作为社会成员所必需的其他能力及习惯。 我们主要介绍:关于文化的很多方面,特别是理论上我们可以看人类学的介绍。文化人类学有详细研究分类。我们以介绍民间传说,饮食,居住,衣饰,生计等具体事例为主。

中国发现肚中含种子的鸟类化石


   来自中国东北盛产化石的九佛堂(音译)构造的最新化石发现是一只生活在早白垩 纪的鸟的化石,这只鸟有一条长尾巴,与名为dromaeosaurid的恐龙的尾巴相似。 该化石保存非常完好,鸟肚子中的50多粒植物胚珠都能看得见,这是鸟类吃种子的 最早的直接证据。尽管这一远古鸟只比始祖鸟稍微进化一点,但它似乎有一个非常 适应有力飞翔的骨架。


破解轩辕黄帝去世之谜 “黄帝陵陨石”惊现于世


   人民网   记者孟西安报道:黄帝陵桥山附近惊现一巨大陨石。有学者称,这块陨石的发现,对破解中华民族始祖轩辕黄帝去世之谜和揭示中华五千年文明史的准确起始时间有重要意义。
  这块巨大的“天外来客”,陨落在与黄帝陵桥山隔河相望的黄帝黄城南宫的印台山上。印台山因相传是黄帝存放玉玺大印的地方而得名。多年来,这座黄土深厚的台状土山,东 坡和西坡多次滑坡,公路中基变形,民居地基裂缝,地质灾害时有发生。现在发现的半掩于印台山顶的巨大陨石,很可能就是这些地质灾害的最初原因。这块陨石地表露出面长82公分,厚21公分,呈磨盘状插入黄土之中,埋入黄土,有多深多大,尚不可测。陨石表面凸凹不平,石质结构复杂,圆形坑多,样片泛紫光,有烧焦痕迹。陕西省194煤田地质勘探队有关专家的初认定这是块巨型陨石。
  史料载,黄帝在位“一百年。地裂。黄陟(zhi,崩)”,“帝以土德王,应地裂而陟”(《竹书纪年》),黄陵民间也有“九龙分黄城”的传说故事流传。其“地裂”与“分黄城”的直接原因,最大可能就是这个“天外来客”。因而,“黄帝陵陨石”的发现者之一、20年从事黄帝文化研究的研究者李延军提出,中华民族始祖轩辕黄帝“应地裂”逝世的谜团和中华五千年文明史的准确起始时间,很可能将由于对这块陨石的化验和测定而得到解开和揭示。

难解的中国文化之谜


   中国是世界四大文明古国之一。其文化更是源远流长,博大精深。千百年来以其独特的魅力,给人类留下许多难解之谜。令中外学者苦苦寻觅,愁眉难展。
   河西走廊上有“罗马古城”
   近年来,地处河西走廊永昌县西南的鸾鸟城遗址,到底是不是“罗马古城”,在中外学者中引起争论。
   这座中国的“庞贝”城位于甘肃永昌县西大河水库西侧高地上,距县城60公里,1968年当地群众在该处修建水库时,发现大量灰层及鹿角等兽骨并出土一批文物,有石臼、铁刀、铜扣、铁犁、陶罐。出土的铁钟残块上有文字,但锈蚀不清,无法辨认。一些外国学者考察后,认为这座城是由古罗马人建筑的。而根据出土文物并参考有关记载,此城应为汉武帝元鼎六年(公元前111年)所置。令中国学者吃惊的是,这个时期恰好是古罗马时代!永昌在汉武帝时称做骊干,而“骊干”又是当时古罗马的称呼(见《史记·大宛列传》。这似乎又不是—种“巧合”。公元前2世纪,古罗马路波斯在西亚打仗,但在西亚史料中却查不到任何关于这支队伍的下落。新华社资深记者李希光先生撰文称,国际史学界近年来有人推测,这支古罗马军队,最后逃走到永昌这个地区并落了户。在《史记·匈奴传》和《汉书。地理志》中,有关于“鱼鳞阵”的描述。据考证这阵式就是罗马军队的布兵方式,所谓鱼鳞阵指的就是古罗马士兵手持盾牌组成的方阵。尽管上述理由似乎很充分,例购队士却说,在对这一古城进行系统科学发掘之前,谁也无法肯定这座城到底是不是由古罗马移民修建的。
   武则天为什么要给自己立“无字碑”
   自古以来,树碑是为了立传。可出人意料唐代女皇武则天却为自己立了—块“无字碑”,给后人留下—个难解之谜。位于陕西乾县的乾陵是唐代第三个皇帝高宗李治和武则天的合葬墓,墓道上并列着武则天碑和唐高宗碑。西面的一块碑文歌颂了唐高宗的文治武功,东面的就是武则天的“无字碑”。 有学者认为,女皇立“无字碑”是为了夸耀自己的功德,因为她在位时政通人和,国富民强,对外号称“大周帝国”。说明她的功绩不是文字所能表达的。
   有学者则认为,武则天立“无字碑”是自知罪孽太大,所以,明智的做法还是不写碑文为妙。还有人认为,武则天立“无字碑”是个聪明的作法,功过是非让后人去评说。但上述观点充其量只不过武则天立‘无字碑’至今谁也说不清楚。
  《满江红》是不是岳飞写的
   多少年来,人们都认为是宋代抗金英雄岳飞的。近代和现代的学者却提出质疑,他们认为如果是岳飞写的,为什么岳飞去世后,宋代和元代的书中都没有《满江红》这首词?直到400多年后的编的《岳武穆遗文》中才出现。况且岳飞的子孙编的《岳王家集》中也没有收录这首词。因此,《满江红》可能是明代人假托岳 飞的名字写的。况且这种事在历史上屡见不鲜。一些学者对词中‘踏破贺兰山缺’,一句进行研究,认为贺兰山在 今甘肃河套之西,南宋时是西夏国土,并不属于金国;而 岳飞要直捣的黄龙府,在今吉林省境内。如果这首词是 岳飞写的,怎能会把地点都错了呢?还有学者针对上述 论断,提出不同看法:他们认为岳飞死后,家里的文稿被 查封没收,后来虽然发还了一部分,但在秦 桧及其 当政时,这些作品很难流传于世。因此《满江红》词不见 于宋元著录,直到明代中叶才出现并流传,是不奇怪的。 至于“贺兰山”一句,同其他地名一样,可用作比喻。《满江红》以贺兰山借指敌境,也未尝不可。
   尽管《满江红》的作者一时难下结论,但这首词的价值和历史影响,是没有人怀疑的。

人类的文明时代开端


  人类的文明时代是从奴隶社会开始的。在原始时代,原始人利用各种物体或图象来传递消息和帮助记忆。之后发展成为象形文字,这标志着人类文明时代的开端。我国的甲骨文,埃及的纸草文字,印度的象形文字和两河流域的契形文字是世界上最早的文字。我国的甲骨文是在河南省安阳的殷墟遗址中发现的。从奴隶社会起,天文学和历法已经开始发展起来。我国有古代世界上最丰富最系统的天象观测记录?lt;<夏小正>>一书,相传就是夏朝的历法,也就是现在的农历,阴历。竹书记年中载有夏桀十年”夜中星陨如雨”,这是世界上最早的关于流星雨的记录。在商代的甲骨文中,也有世界上最早的关于日食,月食等的天象记载。当时已经采用干支记日法。西周以后,已经把黄道附近的星座区分为28宿。公元前613年有了关于哈雷慧星的最早记载。古巴比伦人约在公元前三千年已创造了天文历法,他们把一年分为十二个月,每小时分为六十分。直到现在,人们仍在使用。古埃及人根据星象和季节的联系,也创造了世界上最早的太阳历。在数学物理学和水利知识方面。我国在商代关?quot;数的概念”已经相当完整,卜辞中已有复位数和十进位的数法,最大的数目是三万。当时已能进行一般的算术运算,绘制比较复杂的几何图形。医学在奴隶社会初步发展起来。我国商代的巫咸和巫彭等就曾经到灵山采药为人治病。当时已经有食医,疾医(内科),疡医(外科),和兽医的分科。


史前人类豪宅惊现安徽 15间房屋冬暖夏凉坚固美观


  考古人员近日在被称为“中国原始第一村”的安徽蒙城尉迟寺遗址发掘出15间在地下沉睡了4500多年的红烧土排房。专家说这是我国到目前为止发现的规模最大、保存最完整的史前建筑遗存。
  据中央电视台报道,这些房屋面积从2平方米到20多平方米不等,总长度达75米,并与以前发掘的排房相对接,形成了一个宏大的整体格局。中国建筑学会会长杨鸿勋说,尉迟寺遗址主要的重要遗迹就是这个房子,这在国内这么大面积保存比较好这是不多的。
  考古人员分析,这些红烧土排房不但是一次性建成的,而且有可能因为自然灾害或战争,整个村庄又一次性被遗弃,从而使遗址保存得如此完整。据介绍,红烧土房是史前人类最豪华的住宅,制作工艺复杂,先用粗木和泥土混合物搭建出墙体和屋顶,再用火烘烤,直至整个房屋变成红色。这样的房屋冬暖夏凉,坚固美观。( 2001-6-11)


要看刘备墓, 西出新津三十五


  很长一段时间来,成都、新津、彭山等地口耳相传着一句民间谚语:“要看刘备墓,西出新津三十五”。一位自称发现者的读者大抖猛抖:他按这句民间谚语,在彭山真正找到了一座当地人称作“皇坟山”的地方,规模宏大,自有一番王者气
概。而令人惊奇的是其所处方位与距离和谚语所云刚好合拍。



  刘备墓真的惊现彭山?!联想到曾经也有许多地方传说发现刘备墓和传说武侯祠内惠陵是衣冠冢等情况,在彭山县那个叫“莲花坝”的地方,一探“刘备墓”的真伪……



  过华阳,驶—上双黄(双流—黄龙溪)路,在嘉禾庄下双黄路,行1余公里的土路,到了莲花坝,村民们说,皇坟山到了,这里一座坟堆似的山头拔地而起,四周九座山峰拱卫着这座山头,自有一股王者之气扑面而来。徒步登上半山腰,只见一堆堆古青色的砖瓦散落在地,村民们说这是掘墓的结果。



  48岁的林泽成是第一个进墓的,他和村民开始了开掘工作,而里面只有3、摄氏度,令他直打冷噤;墓道全是青石板铺就,上方和侧壁金光闪闪,全是染满金粉的青砖。还未进得墓里,有一圈环绕在墓前的水用抽水杉抛了半天也没抽干。脚刚踏进门,墓里传出“轰、轰、轰”三声像打炮的声音,众人诧然抽 身,却不见一丝异样,开掘进度暂停。当晚7点左 右,终于进了墓室,发现了大小两只红漆木棺材,大的长9尺,高4、5尺,j1的高1.8尺;棺木经分离,里面空无一物,估计被盗过。墓室共三间, 大的一间2.8平方米,里面有石料办公桌、石料 椅子、木制小柜等。同时也发掘出乌金、剪子和几大担马骨头等物。 搬动棺材,20多个小伙子发一声喊,把棺材抬离地面,这时天空中突然霹雷尽闪、狂风走石…… 棺材起出后,闻风而来的一位文物贩子私 下对林浑成说:“75万只要棺材。”这没让村民们动心,反而把墓看得更紧。 一些涂着金粉的砖和刻有图案的石片被文物局收走了,遗留下来的,本村有4户林姓村民 都觉得好看、结实,于是一家搬些砖头回去砌了一个猪圈、一家修了个茅厕、一家作了磨刀石、 另一家铺了地面,哪知却一一遭遇神奇:一家人死了人,是莫名其妙死的;一家出了个疯子;一家老人患了腰痛病愈来愈重;一家的猪跑出几 里路,像是有人赶……总之是没有一家清静, 后来村民纷纷把这些砖瓦丢弃后才恢复如初。



  林先泽说:“这些东西都是刘备封赐过的陪葬品。怎么动得!” “皇坟山绝对是刘备坟!”住在皇坟山山腰的村民林泽成十分肯定地说。据他介绍,皇墓内全是石灰和沾土堆就的坟体。 蚂蚁、蚊子、蛇能生存在这片土地上。 为这是刘备防虫的方法。



  修建刘备坟,村民们绘声绘色地继续建在这个山头的‘金陵寺’拆毁,把墓建陵埂”山头。为什么偏偏选中这个地方?拉着记者走上坟顶,指着四周的九座坟的头都朝着这儿在拜呢!再说,这坟墓正好就是”莲篷”,四周的山脉莲花花瓣,这可是个风水宝地。相传别 侯,都有一个刘氏后裔因此守墓。 “刘备墓,西出新津二十五”的谚语已久。在记者踏上这皇坟山之前,已有人由谚语指点寻到此处寻金,奈何都失望而归。这个行为持续了几个朝代。在现场可以看到,有4个仅能容身的洞口堆满泥土。住在山上的林增泉,这些盗墓者都是晚上作业。他们已经有几十个坑。 “诸葛亮上晓天文下通地理,让你得到嘛!”

外  国  文  化
南*马特尔群墓之谜


  南太平洋波纳佩岛东南侧有个小岛叫泰蒙,从这个岛延伸出去的许多珊瑚礁浅滩上,耸立着—座座用巨大的玄武岩石柱交错垒起的高达4米多的建筑物。远远望去,怪石磷响,近看义仿佛是一座座神庙。这就是南·马特尔遗迹。传说它是居住在波纳佩岛上历代酋长的坟墓,大大小小共有89座。它们之间环水相隔,形成一个个小岛,散布在长达llOO米,宽450米的太平洋浅滩上。用波纳佩说解释;南·马特尔有两个意思:—是“集中着众多的家”;二是“环绕群岛的宇宙”。遗迹的下部分浸在水里。人们只有在涨潮时才能驾船驶入。退潮后,遗迹周围露出—。片泥泞的沼泽,连小船也无法驶入。


  据当地人说,这些古墓的来历,并无文字记载,完全是口授,而且仅有酋长知道。口授的内容忌向外人泄露,否则将遭到诅咒而丧生。 第二次世界大战期间,日本人占领纳佩岛。东京大学教授杉浦健—利用占领者的权势,强迫酋长说出古墓的秘密。几天之后,酋长遭雷击身亡。杉浦回日本后,正打算将古墓的秘密整理成书出版,可书未成就暴死了。杉浦家人委托另—位对印话有研究的泉靖—教授继续整理书稿。奇怪的是,教授接手资料后不久也突然死去。 手稿笼罩作阴影,从此无人敢问津这些手稿了。


  南·马特尔遗迹的神秘吸引厂不少欧美学者前来调查。但是,他们对这项宏伟工程是用人力完成的表示怀疑。


  专家们估计,整个建筑大约用了l00 万根玄武岩石柱。它们都是从该岛北岸的采石场开凿、加工成石柱后用筏子运到这里来的。如果每天用1000名壮劳力从事开凿,那么光采石就要化655年。如果用人力把石柱加工成五角形或六角形的棱柱,每根需要花二三年的时间,所以,最终究成这项建筑,至少需要l550年。然而在遗迹建造时代,该岛人口不足2500人,何况人们还得从事农业劳动以确保生存。因此,这项工程很难凭借人力完成。不少学者对遗迹的建造之谜进行了研究,提出众多的假说。有的认为玄武岩浆冷却的火成岩,石柱的五角、六角形是冷凝固成型的。可是,从石柱表面上看。很难解释是自然成型的。南*马特尔建筑成了——个未解之谜。直到今天,关于南*马特尔遗迹的假说众多,矛盾重重,疑点密布,可信度不高。其神秘的面纱,还等待着人们去进—步揭开。


古埃及的金字塔


  金字塔的兴建是建筑史上的奇迹。在没有地图,指南针等的条件下。竟将金字塔的底座定为朝北的。(当然现在科学家已经解开了这个迷.请看最新研究),如此巨大的石块是如何搬动的,现在看来是应用力学原理和填土增高的方法。金字塔中最大的法老胡夫的陵墓,约建于公元前27世纪.全塔高146米,塔基每边长230米,共用230万块巨石垒成。胡夫的儿子哈夫拉陵墓旁,有一个狮身人面像,也就是希腊神话中的”斯芬克司”,它雕刻着哈夫拉的头部,狮子的身子,高20多米, 长约57米,整个雕像是在一块天然岩石上刻成的。雄伟的金字塔和富有魅力的狮身人面像互相掩映,形成古代文化上的伟大奇观。


埃及“法老咒语”之谜


  1922年,英国考古学家卡那封爵士挖掘了埃及第18世王1朝图塔卡蒙国王的陵墓,随之出土的文物宝藏因其数量之6大、价值之高而轰动了整个世界。然而,更轰动的事发生在51个月之后:所有第一批进入图塔卡蒙国王陵墓的工人和考古学家无一例外地患上一种神秘疾病而痛苦地死去,卡那封爵士也不例外。在接下来的76年时间里,考古学家和医学专家们想方设法企图解开首批挖掘人员神秘死亡的秘密,但一无所获。于是,许多人只能把这一神秘的集体死亡事件归结于“法老的咒语”:埃及古代的国王为了防止别人挖掘他们的坟墓而在临死前立下咒语,诅咒那些胆放闯入他们墓室禁地的人。卡那封爵士和他的手下就是被法老咒死的。



  直到最近,法国巴黎“生物实验室”赫赫有名的科学家塞尔万·甘佐纳总算找到了卡那封爵士等人神秘死亡的原因,从而揭开了几十年来困扰·世人的“法老咒语”之谜。甘佐纳经过长达数十年的研究后发现,图塔卡蒙国王的墓室里隐藏着一种极微小的孢子的混合物。当卡那封爵士和他的手下闯入几千年来未受任何干扰的因塔卡蒙国王的墓室的时候,他们吸进了大量微小的孢子;这些致命的孢在被吸入人体后立即长成致命的病原体。甘佐纳说:“我们现在完全可以断定,卡那封等人的死亡完全是因为他们感染了那些极其致命的病原体。”



  最先引起甘佐纳注意的是考古学家尼古拉斯·里夫斯《图塔卡蒙国王实情》中的一段描述:“坟墓里随处可见成团成团的莫名其妙的东西,我们怀疑那是致命的真菌。加上卡那封爵士自从到达埃及后的身体状况一直不很好,所以特别容易受病菌的感染。”里夫斯对“法老咒语”的说法咳之以鼻:“如果说‘法老咒语’真的显灵的话,那么发现法老坟墓的考古学家和解剖图塔卡蒙国王木乃伊的医生更应该死呀,可他们反而安然无恙。”甘佐纳在经过长期的研究之后证实了里夫斯的判断,他在一份即将发表的科研报告中声称:“当你走进一座有3000年历史的坟墓时,如果在里面还发现了仍活着的真菌的时候,那么它们一定是最致命的病原体。”甘佐纳最终在当年出土的最精美的“死亡面具”里发现了多种病原体的样本。不过,现在仍需解决的一个问题是:这些病原体到底是怎么出现在坟墓里的?甘佐纳现在只能猜测说:“如果埃及人非常聪明,并且真想诅咒闻入墓地的人的话,那么他们可能把他们所知道的病原体或者真菌放在坟墓里,随时让不速之客染病后毙命。”

最  新  研  究
距今1.25亿年前的真兽亚纲哺乳动物化石


  所有现存哺乳动物,包括有袋动物和如鸭嘴兽等产卵的单孔类动物(Monotreme),是真 兽亚纲(有胎盘)哺乳动物。关于真兽亚纲哺乳动物的年龄一直存在很大争论,争论的焦 点集中在现存真兽亚纲哺乳动物的一些目是在白垩纪/第三纪边界之前还是之后发生分 化的。最近发现的一些不完整的化石,将真兽亚纲哺乳动物同其他哺乳动物分化的时间 提前到了白垩纪。现在,在中国新发现的一个距今约有1.25亿年的真兽亚纲哺乳动物化 石,又将这些哺乳动物的化石记录再提前了4000万年。该化石也是最完整的早期哺乳动 物化石之一,其整个头骨、骨架、甚至毛皮都保存完好。


来自晚三叠纪的化石脚印


  自晚三叠纪的50个清晰的、与鸟类相似的化石脚印的发现,引发了一些 有趣的问题。如果这些脚印是鸟类留下的,它们要比已知最早的鸟类身体化 石还早大约5500万年;如果不是鸟类留下的,它们将代表着以前不知道的一 组动物,可能是小型兽足动物。不管是哪种情况,古生物学家之间都会有很 多争论。


通过沙岩推断史前年度降雨情况


   覆盖美国亚利桑那和犹他州大部分地方的早侏罗纪navajo沙岩,是由沙丘沉积形成的。科学家通过对这种岩石进行仔细研究,获得了关于史前年度降雨情况的详细记录。
   当沙丘迁移并相互攀升时,在它们后面就会出现明显的层状结构,其形状是由沉积岩石形成时的优势条件决定的。


造成陆地植物灭绝的其他原因


   大约2亿年前,在横跨陆地和海洋的三叠纪和侏罗纪边界上发生了 大型物种灭绝事件。气孔密度研究结果使得科学家猜测,陆地植物 灭绝事件与大气中二氧化碳的急剧增加有关,这些二氧化碳也许是 由火山活动释放的,与全球变暖有联系。但是现在,tanner等人提 出,我们需要到其他地方去寻找这种灭绝事件的原因,例如其他火山 效应或海平面变化。由古土壤样品中碳同位素组成得到的大气中二氧 化碳浓度的新的测量结果表明,在这一地质边界上存在一个基本可以 忽略的变化,这个变化太小,以至不会对那个时期的动植物群落造成麻烦。


由冰芯记录推断气候变异


   来自格陵兰和北极冰层的冰芯记录为了解气候变异提供了最详细的信息。对这些记 录的解释依赖于这样一个假设:在这些冰芯中起气候变化代言物作用的痕量组分, 在冰形成以后保持不变。新的研究工作说明,这种假设可能是不对的。问题在于包 括冰在内的所有多晶形材料所具有的预融化效应特徵,该效应有可能导致某些杂质 模式的形成,以维持其形状,但会沿冰芯内较老部份的液体“纹理”迁移长达50厘 米。


中国澄江发现古老尾索动物化石


   中国南部云南省的澄江化石床同不列颠哥伦比亚的burgess叶岩一样,以保存来自 “寒武纪爆炸”的精致的软体动物化石而闻名于世。这一时期复杂生物繁盛,在澄 江最新发现的也许是一组最重要的动物尾索动物家族中最古老的一个。这种保存完 好的化石与现生海鞘类动物相像,如海鞘(sea squirt),具有一个镶嵌式的身体平 面,这对于追踪脊椎动物的起源也许会有所帮助。


中国贾湖新石器时代遗址发现世界上最古老的乐器


   中国河南省贾湖新石器时代遗址出土了有可能是世界上最古老、保存最完整、有的甚至还能演奏、而且年代已得到准确考证的乐器。贾湖遗址在公元前7000年至公元前5700年间有人居住,比著名的裴李岗文化要早得多。本文介绍6只制作精美、保存完好的笛子,它们是在年代已经用放射性碳测年法准确测定的地层中发现的,同时发现的还有约30只笛子的碎片。这些笛子是用丹顶鹤(grus japonensis millen)的尺骨做成的,每只笛子上有5个、6个、7个和8个不等的演奏孔。研究人员还用保存最好的一只笛子进行了演奏,并对其进行了音律分析。除了出土远古时代的乐器外,贾湖遗址还含有了解中国社会最初形态所需的重要信息。我们在本文中介绍了贾湖遗址在考古学上的特点、关于其年代测定的详细情况、该遗址在中国新石器时代史前文化中的地位、当地人口的民族特征、以及在该遗址发现的一只有近9000年历史的乐器的音律分析结果。


五千年前古人已懂人体解剖


  (南宁)最新考古发现,在南宁市挹宁县顶狮山贝丘文化遗址发掘出土的大量文物 ,证明了大约在1万至5000年前(日本学者估计为14000年前),在顶狮山 居住着古人类,就已经初步了解了人体解剖结构。 在顶狮山贝丘文化遗址现在已经发掘出的4000多个古人类遗骸中,有三分之一是采用 肢解葬的方法,考古专家认为,这种令人惊奇的先肢解后葬的习惯,反映了顶狮山 人对人体解剖的认识水平,填补了史前体质人类学家韩康信现场鉴定确认, 到目前为止,国内外尚无肢解葬葬式的报告。关于采用肢解葬 的原因,专家目前还未能作出解释。


从恒星位置推断金字塔年龄


  在4000多年前,古埃及建筑师是如何在没有罗经,没有地图,没有指南针的,也没有北极星(当时这个地方看不到北极星)的情况下,成功地把古萨金字塔的底座方向定为朝北的?英国剑桥大学埃及学家凯特.斯彭斯想弄明白这样一个问题。一个偶然的机会,斯彭斯发现了一个精确推断年代的方法。她将目光转向了恒星。
  她收集了一些天体物理学家的计算结果,天体地图和拓扑学及考古学参考资料,标出了大熊星座的开阳星和小熊星座的帝星的位置。这两颗恒星非常明亮,尤其是它们都靠近北方。终于,凯特·斯彭斯明白了:开阳星和帝星曾经为古埃及人充当了铅垂线。为了使金字塔朝向北方,古埃及人将金字塔建在这两颗星所在的直线上。凯特·斯彭斯指出:”这样就比较精确了。”随着时间的推移,由于地球的转动,开阳星和帝星已经失去了它们原来的正北指向,偏离了公元前2467年朝北的直线。但是金字塔的建造者们没有注意到地球的转动现象,而继续把这两颗星当做方位标。结果:胡夫金字塔比正北方偏离了0.05度,门卡乌拉金字塔偏离了0.2度,其它在公元前2600年—-公元前2300年间建造的金字塔的偏离度数证实了这种继续增大的趋势;由于金字塔一直是顺着开阳星与帝星所在的直线建造,所以它们在未被觉察的情况下慢慢偏离了北方。这种轻微的偏向可能会使法老们在坟墓里转身,但却使埃及学家们欣喜若狂。 如果斯彭斯的研究结果得到:证实的话,查到现在还在使用的确定金字塔建造年代的碳14和埃及国王名单方法可能就会受到威胁。利用开阳星和帝星可以更精:确地找出每座金字塔的建造年代。只需要找出每座金字塔建造时这两颗星星在天空中的位置,然后测量出金字塔与正北方之间的偏角,就可以计算出当时的年代。凯特·斯彭斯解释说:”天体物理学家的资料是很精确的,根据这些资料可以计算出一颗星星的位置,时间误差只有5年。”再经过一些计算,研究人员们就能确定至今仍然存在的世界七大奇迹之一—-吉萨金字塔的准确年龄。


人类改写地球生命史的发现 五点三亿年前“海口虫”化石


  2000年12月2日,国际权威科学刊物<<自然>>杂志公布了中国科学院南京地质古生物研究所陈均远研究员及其助手黄迪颖以及台湾”清华大学”李家维教授合作研究的一项有关云南海口距今5.3亿年脊椎动物祖先的重大科学发现。谁能想到,这些被命名为”海口虫”的小小鱼状化石的发现,将改写包括人类在内的脊椎动物起源和早期演化的历史。300多条长不过4厘米的鱼形动物化石保存得极为完整精致,让人叹为观止,这些有头类动物被陈均远教授等命名?quot;海口虫”。显微镜下,这些貌不惊人的细条状动物的外观和身体内部构造均清晰可见。由心脏和腹、背动脉及长有鳃丝的6对鳃、弓组成一个完整的循环系统。”海口虫”已有明显的头化现象。在头部的腹后方有一明显的漏斗形的口腔,近口腔外边缘的口须以及咽腔基部的一对内柱以及呈滴珠形的腺体等,均得以十分清晰地保存。”海口虫”的咽部之前还发现了矿化的细小齿状构造,这些齿状构造表明脊椎动物的祖先对所摄取的食物已有初步加工能力。此外,在”海口虫”身上还发现有四对位于咽腔后部的生殖腺,其中一块标本还保存了很好的雄性交配构造,说明”海口虫”已出现两性分化。陈均远等还发现,”海口虫”不仅有一个较大的脑和位于头部两侧的眼睛(它的脑与身体相比的相对大小,与现在的七鳃鳗幼虫大体相当),而且已有明显的三分现象,即:前脑、中脑和后脑:这表明现脊椎动物的演化以头化作为关键的起点,在寒武纪早期已拉开了序幕。陈均远教授还指出,由于化石的缺乏,以往教科书中把攻今生活在海洋中的文昌鱼当作最原始的脊索动物,认为文昌鱼是包括人类在内的一切脊椎动物的祖先。其实,文昌鱼是脊索动物一个演化侧支的代表性生物,这一侧支称为头索类。这一侧支可能在5亿多年前就已出现,但由于生活方式的简单,它们没有头化的演化进程,没有脑子和眼睛的明确存在。这一侧支与”积极向前”的脊椎动物的出现显然是无缘的,也更不可能与大脑高度发达的人类建立亲缘联系。总之,”海口虫”的发现,以极为丰富的化石材料,揭示了脊椎动物祖先阶段的特征,为进一步深人探讨脊椎动物的发生及早期演化具有十分重要的科学意义.美国著名生物学家、加州大学霍兰德教授在前不久召开的<<动物多样性起源>>国际学术讨论会上称赞说:”"海口虫”的发现是人类重塑地球生命历史的一项惊人的成就”。

2004年11月25日

网络学习:能给教育带来什么?


作者:张建伟* 孙燕青


网络学习环境的新特性可以归纳为信息传递与共享机制的变化、信息表征与加工方式的变化、人际沟通互动方式的变化。就其深层意义而言,这些特性有利于实现学校教育模式的虚拟化、开放化,实现合作探究性教学模式,促进学校与社会的重新整合。然而当前的网络教育并未实现网络的上述潜力。


1 引言


早在20世纪80年代,美国等国家的研究者就开始了网络教育的尝试,90年代则成为网络教育快速发展的时期。网络学习环境具有哪些主要的新特性?它对于教育而言具有哪些深层意义?当前的网络教育是否实现了这些优势?本文就在相关研究的基础上来回答这些问题。
2
网络学习环境的特性
   
对于教育来说,网络具有哪些重要意义?要回答这一问题,首先要看网络究竟在学习环境上导致了哪些重要变化。许多文章都具体论及了网络学习环境的特性。跳出这些具体的特性描述,网络学习环境所带来的新变化可以归为三个主要侧面。
2.1
信息资源传递与共享机制的变化
   
有效的教育活动离不开学生、教师与信息资源的互动。在传统学习环境中,信息资源的存在及其传递形式主要局限于文字印刷形式和面对面的口头传授,以教科书为蓝本的课堂面授成了教学的主要形式。这样的信息传递方式在很大程度上受时间和空间的限制,在沟通形式上缺乏灵活性,同时不宜于信息资源的跨地域共享,容易造成地区间教育信息资源的巨大不平衡。网络为教学提供了一种新的功能强大的、集成性的信息传递媒介,通过WWWFTP、计算机会议、视频会议等形式,网络可以实现各种数字化信息资源的跨越时间与空间、跨越平台的沟通传递,实现优秀教学资源在更大范围内的共享。网络大大提高了信息资源传递的便捷性、灵活性、集成性、即时性,大大丰富和扩展了教育活动可以利用的信息资源内容。教师和学生所面对的不再只是此时、此地的信息资源,而是一个无限延伸、无缝连接的、巨大的信息资源库。
2.2
信息表征与加工方式的变化
   
网络不仅更好地实现了信息资源的传递共享,而且,信息本身的存在表征与加工方式也发生了重要变化。
1)信息表征的超媒体化:网络学习环境的核心是一种超媒体的信息组织与表征方式,即每个信息结点(如概念、事实、规则等)本身是以文字、图像、图形、声音、视频等不同形式表现的,而各个信息结点之间又依据其意义联系建立了丰富的非线性链接(超链接)。因此,学生在学习环境中所面对的不只是语言、文本信息,而是集多感官通道信息于一体的多媒体信息;不再只是具有预定顺序信息序列,而是一个可以按照思维与理解路线自由跳转、自由展开的立体信息空间,学生可以按照自己的方式展开自己的学习路径、学习过程。
2)信息加工(processing)与处理(transaction)方式更为便捷和灵活:网络可以支持高水平的信息操作处理。通过搜索引擎、数据库检索等可以更方便地查询、获取、下载自己需要的信息(当然需要学习者对信息的可靠性、真实性、相关性和即时性等进行批判性评价),并对下载信息进行选择、编辑和概括分析。另外,很重要的是,越来越多的用户友好的网络创作工具可以支持学生的创新、创作活动,学生借助少量的技术支持就可以创作、发布自己的网站,建立自己的网页,甚至结合自己的任务目的参与建立网上图书馆、数据库、杂志、博物馆以及其他基于Internet的公共信息库,将自己的创新成果公布在网上,从而增加了学习者在知识建构上的主动性和发言权,这是以往的学习环境所难以做到的。
2.3
人际沟通互动方式的变化
   
网络越来越成为一种促进人类沟通交流的有力工具,而人际交往与互动则在教育过程中占有核心地位。以计算机为媒介的通讯(CMC)可以作为功能强大的人际互动媒介,可以支持同步交互(如网上聊天室、视频会议等),也可以支持异步交互(如E-mail, BBS等),可以是一对一的交互,也可以是一对多、多对多的交互。这将大大促进学生与同伴、教师、专家的跨越时空的沟通交流。而且,利用计算机支持的协同工作(CSCW)工具(如共享白板、MOO/MUD等),可以实现学生的网上远程协作学习以及教师之间的合作工作。网络不仅仅是计算机的联网,更重要的是人的心灵与智慧的联网,它大大缩短了人与人之间的时空距离,从而可以实现更便捷、更广阔、更灵活开放的人际沟通互动。
3
网络学习环境能带来什么
   
网络学习环境的这些新特性能给教育带来什么呢?显然,网络也可以像原来的CAI一样来辅助传统的教学活动。然而,与以往的教学媒体相比,网络应该更有潜力引发教育的深层变革。
3.1
学校教育模式的虚拟化、开放化
   
学校教育中的传统核心概念是课堂、教师、学生班级、课本、课程表,其典型形式是在特定教室中进行的班级授课。由于网络环境中信息资源传递与共享机制的变化,以及人际沟通互动方式的变化,随着网络在教育中的广泛应用,这种传统的学校教育模式可能会被打破,教育将变得更为虚拟化和开放化。学校教育无需再局限在学校围墙所及的物理空间中,学生可以在任何一个地方通过网络听课,学习课程内容,完成和提交作业,与同学、老师或其他人讨论,甚至参加考试;同时也可以在学校中通过网络使用位于不同地方的教育资源,如数字图书馆、远程实验室等。另一方面,学校中将可以采用更灵活、更个性化的时间安排和时间进度,而不是统一的课程表。研究者用分布式学习(distributed learning)来描述这种虚拟化的学习方式。
3.2
合作探究性教学模式的实施
   
与建构主义等学习与教学理论的发展相适应,合作探究学习成为新型教学模式的核心。由于网络所引起的人际沟通互动方式的变化、信息表征与加工方式的变化以及信息资源传递与共享机制的变化,网络学习环境在合作探究学习上具备了更多的潜在优势,可以为这种学习活动提供更有力的支持。网络可以为作为有力的合作学习工具。学生以计算机为媒介的通讯(CMC)大大扩展了参与沟通的成员的范围,扩展了理解与思想的广度。另外,对于那些比较内向和高焦虑的学生而言,网络提供了一种更为适宜的沟通工具,可以减少面对面对话时的压力和尴尬。而且,网络既可以支持生动的同步交互,让学生能够与身处远方的学生或教师、专家实时交流;同时又可以实现灵活的异步交互。研究表明,在异步交互中,学生可以在发出自己的发言之前对自己的想法进行更深入的反思和完善,因而有利于实现更为深入的讨论、研讨(Owston, 1997)。另外,研究者还发现了网络互动中的听众效应,即与作为作业给老师写作文相比,学生通过网络为身处异地的同伴(听众)写文章会产生更好的写作效果。这是因为在这种沟通中,学生的写作具有真实感和明确的目的性,因而会对自己的表达进行更好的监控和反思。这种促进性效果不仅表现在作文上,研究者在科学、数学以及社会研究等学科中均发现了相同的效应(Fabos & Young, 1999)。网络可以支持当地学生乃至世界范围内的协作学习,创建各种主题的学习共同体,使学生和教师广泛地参与到合作活动中,甚至将教育系统之外的人也吸引到共同体之中。这种跨文化的沟通合作既有利于促进学习效果,也可以促进学生对于多元文化的理解。
   
网络环境也有利于实现开放灵活、积极主动的探究性学习。开放灵活的超媒体信息表征与组织方式、及时更新的最新前沿信息、各种丰富的网络数据库、便捷的沟通方式等等,都可以为探究性学习提供更为适宜的信息资源环境。网络环境中的搜索引擎、问题解决工具、计算工具等都可以为探究活动提供有力的认知工具支持。各种网页创作工具可以帮助学习者很方便地将自己的探究结果发布在网上,个性化地表达自己的想法和见解。当前,研究者强调要利用网络来支持学习者的基于问题式学习(problem-based learning)、基于课题式学习(project-based learning)等,即针对学习目的和内容为学习者设计一定的问题、任务,让他们利用网络资源和工具展开探究活动,合作研究问题、完成任务,形成探究报告或某种产品等,通过问题解决来建构相应的知识理解和思维能力。
   
当然,学生网上合作探究活动的过程是怎样的?学生是如何寻找信息、合作探究的?是如何分享他们所建构的理解的?教师应该在何种程度上发挥引导作用?应该如何评价合作探究学习的效果?等等,对于这些问题我们都还需要深入研究(Windschitl, 1998)
3.3
学校与社会的重新整合
    20
世纪初,面对传统教育机械、被动、割裂生活经验的弊端,杜威提出教育即生活、学校即社会、做中学等具有巨大冲击力的命题。然而,经过近一个世纪的发展,我们的教育在这些方面却并没有太大实质性的改观。学校文化与整个社会文化之间仍旧存在人为的隔阂,学生的学校生活经验与其在现实世界的生活经验之间依旧没有得到良好的沟通。甚至学校中的各种学科都在一定程度上既背离了其学术本源,也背离了其生活本源(比如,学校数学既不同于数学家的数学,也不同于实际生活中的应用数学)。网络环境的新特性似乎有可能促进学校教育与社会生活的重新整合,促进的重新整合。网络是一种具有强大交互性的媒体,在网络上信息可以沿着不同方向流通,从长远来看,网络对学习和教学带来的深刻影响可能是教育机构与社会之间的信息沟通(Levin & Thurston, 1996)。在学习过程中,学生可以通过网络接触工作、生活、科研等现场的情境性信息,可以与当事人(实践者、研究者等)对话交流。另外,如前所述,当前的课程与教学改革非常重视基于问题式学习、基于课题式学习。网络使得教育者可以在学校之外的世界中广泛地采集这种问题课题,而且,更重要的是,网络可以使学生和教师的探索成果立刻被推广应用到社会中,这种探究活动不仅具有促进学生学习的作用,而且会产生实际意义。学校可以作为中介帮助当地社区与其他地区、文化之间进行交流合作。学校往往会具备当地社区中较好的网络设施,而且学生、教师也往往能更熟练地使用网络。作为学习活动的一部分,学生可以与当地的成人交流,找出当地社区面临的挑战或问题,而后利用网络获取有关信息,与其他地方的人士联系,以促进社区问题的解决。因此,学生、教师所进行的网上探究活动不仅可以实现高效的、积极主动的学习活动,同时也可以服务于社区发展,使学生、教师成为更有贡献的社区成员。比如,美国加州、伊利诺和日本、墨西哥、以色列等地学生通过网络协作探究当地的缺水问题。一开始,这些学生分别搜集当地的资料,具体描述当地的问题以及解决问题的具体方案。而后,他们通过网络交流情况,相互分析各地的资料,判断其他地方是否有什么当地尚未采用的有效措施。比如加州的学生发现,以色列采用滴水灌溉的方法,而当地没有采用这一技术,于是他们以此为基础向当地政府提出了关于采用这一技术的建议。
   
网络深刻地改变了教育与社会之间的关系,它打破了隔离学校与社会的许多壁垒。其中有些壁垒曾经发挥着保护学生的作用,这样的保护措施需要在新的网络环境中进行重建;而更多的壁垒则是割裂了,割裂了学校社会。学校与社会的重新整合将需要角色与职能的重新分配,社会结构的重构,以及对整个教育体系的重新思考。
4
关于网络教育现状的反思
   
网络似乎向我们预示着教育的变革与发展,而现有的网络教育是否已经实现了这些潜能了呢? Paulsen2000)对26个国家的130个网络教育机构的网络课程进行了分析,发现其中大多数网络教育机构仍在尝试阶段,所提供的网络课程和支持服务都还不够丰富,所采用的入学和学习方式还不够灵活,都称不上是虚拟或网上大学。Mioduser等(2000)对全球436个教育网站进行了定量分析,发现:(1)从教学的角度来看,当前的网络教育并未实现教学模式的创新。只有28.2%的网站包含有探究活动,3/4以上的网站是高度结构化的、严格规定好的学习过程,多数网站所引发的认知过程是信息提取(52.5%)、或机械学习(42%),较少关注分析推理过程(32.6%),更少涉及问题解决和决策活动(5%)。只有极少网站有学生建模或适应性机制。尽管网络在协作学习上有独到的优势,但令人失望的是只有2.8%的网站支持协作学习。(2)从信息表征与加工来看,网络应该说具有最佳的信息表征、组织和处理功能,是一种高级的整合性媒体。但在所分析的网站中,它们并没有充分发挥这一优势,绝大多数网站都高度依赖于文本。另外,网络作为超文本信息结构,其中可以采用合适的导航和搜索工具。但是,这些教育网站内部链接不丰富,外部链接非常少,也缺少网络特有的导航和搜索工具(如认知地图、搜索引擎等)。83%的网站完全依赖于网站内的资源,只有31%的网站提供了其他网站链接,22%的网站给学习者指明了网络以外的资源,即网络仅作为学习环境中的一个部分。很少有网站将同伴、专家作为学习资源。(3)从交流功能来看,这些教育网站只采用了有限的交互功能,最集中的交流工具是email,其他工具使用都很少。而且,这些网站中几乎没有发现支持协同工作和学习共同体的成分。尽管网络可以支持高水平的交互活动,然而这些网站最多采用的是更低级别的交互方式:浏览(76%)。因此,这一研究让我们看到的是超前一步的技术,落后两步的教学,现有的网络教育并没有很好地发挥网络的潜在优势。而我国当前的网络教育也面临同样的尴尬境地。
5
结论
   
教学媒体本身并不能自动导致好的学习效果。究竟应该如何创建有效的网络教育模式?如何利用网络的潜在优势促进教育模式的深层转变?这些都是必须深入研究的问题。美国国会成立的网络教育委员会在其提交的报告中也强烈呼吁要为有效的网络学习建立坚实的教育理论基础Mioduser等甚至提出可以建立与网络环境相适应的网络教育学” (Webagogy)。网络教育是一个如此复杂的领域,需要多学科的研究者开展跨学科深入研究,更深入地、批判性地检讨信息技术、教学理论、学习活动之间的互动关系,以便为有效的网络教育提供更有力的指导。


                                                  巧用Flash绘制函数图形
                                                                           彭声泽           李燕平
                                                                  (绵阳师范学院  四川绵阳621000)(绵阳职业技术学院)
摘  要    由于Flash软件本身不具备绘制函数曲线图的功能,而在教学中又不可避免地需要绘制函数曲线图,本文详尽地说明了使用Flash电影夹绘制函数曲线图的方法与操作步骤。
 
关键字    Flash 电影夹 函数 曲线图
         由于Flash软件功能强大、易于使用、制作的播放文件小,利于网上传输,因而在教育、教学特别是网络教学中得到了广泛使用。但是,因为 Flash软件不带函数图形绘制功能,而我们在数学、物理等学科的教学中不可避免地要描绘一些函数曲线图,因而在数学、物理的某些应用中它受到了极大的限制。通常,我们在需要函数曲线图的时候,就只能使用其它专门软件事先做好,而后以图片的形式引入到Flash中;或者是用Flash中的“铅笔”工具手工绘制(当然这就不可能准确),这多少使我们感到有一些遗憾。其时,只要我们较深入地学习Flash,我们就会发现在Flash中可以很方便地利用电影夹来描绘函数的曲线图。下面我们就以绘制SIN()函数的图形为例谈一谈利用Flash中的电影夹,绘制函数曲线图形的操作方法。
         首先,在Flash中新建一个文件,对其属性进行必要的修改。
      第二步,制作坐标电影夹。选择“插入”菜单中的“新组件”菜单项,在弹出的组件属性对话框中为新插入的组件命一名称,如zhuobiaoMC,其行为模式选择“电影夹”。而后在电影夹的编辑窗口中用线条工具绘制坐标,注意:为了以后的操作方便,应当调节坐标的原点为(0,0)。坐标电影夹的最终效果如图1示:



(图1:坐标)


        第三步,制作“点”电影夹。由于Flash本身并不具有绘图的功能,故为了使它能够绘制曲线图,则需要采用复制电影夹的方式。同上插入一新的电影夹组件,并命名为dotMC,在该电影夹中,只需要简单地画上一圆,并将其中心点的坐标调节到(0,0)。
        第四步,制作按钮,为了我们能进行绘图的控制,需要制作“绘图”和“重绘”两个按钮。(注:这两个按钮也可只做一个,而后在主电影中将其复制一个,并将其中的一个方向更改。)
        第五步,通过上面的操作,我们已将需要的组件就准备好了,接下来我们就可以开始描绘函数曲线图了。如图2示,为最后制作完成的界面,在场景中,一共有6个图层,它们分别是:坐标、点、初始化、动作按钮、文本框、标签。图层名称可以根据自己的喜好而命,但一般应能反映图层内的内容。
(图2:主场景)
         5.1 在场景中双击“图层1”的名称栏,而后对“图层1”重命名为“坐标”,将事先做好的“zhuobiaoMC”电影夹拖到场景中的“坐标”图层中,适当调节其高度、宽度和位置,而后单击“窗口/面板/实例” 或直接按快捷键“Ctrl+I” 打开“实例”面板为“zhuobiaoMC”命一实例名,如zhuobiao。
        5.2 新增一图层,并命名为“点”,将事先做好的电影夹“dotMC”拖到场景中的“点”图层中,并为其命一实例名,如“dot”,其位置不必考虑。
       5.3 进行初始化,新增一图层,并命名为“初始化”。双击“初始化”图层的第一帧或选取该图层的第一帧后再单击“窗口/动作”,这样Flash都将打开“动作”面板。在动作面板的编辑窗口中输入以下动作语句:
n = “0″;
//初始化变量n;
startX = getProperty(zhuobiao, _x);
startY = getProperty(zhuobiao, _y);
//获取坐标电影夹实例“zhuobiao”在主场景中的坐标位置;
setProperty (“dot”, _y, startY);
setProperty (“dot”, _x, startX);
//设置电影夹实例“dot”在主场景中的位置,使它的坐标位于坐标电影夹的原点;
        通过上面的初始化语句,我们就不必考虑绘图的点是否从坐标原点开始的了,每当电影开始播放时,Flash都将自动将“dot”与坐标原点对齐。(注:上述语句中双斜线“//”后的内容为注释。)
         5.4 添加“按钮”图层,将我们事先做好的按钮放入这一图层中,并调节其在场景中的位置。而后为“重绘”按钮赋予以下动作语句:


 


 


 


on (release) {
   for (n; n>=0; n–) {
      bn = “dot” add n;
      removeMovieClip (bn)
      //删除复制的电影夹,为重新绘图做准备;
   }
}
为“绘图”按钮赋予以下动作语句:
on (release) {
nn=360;
//nn表示角度的变化,变化范围从0度到360度;
a = texta;
b = textb;
c = textc;
//获取文本框的数据,以便于按需要绘出图形;
if(b<1){
    nn=360/b;
}
//由于当b小于1时,nn从0到360范围内变化时,绘制的曲线不到一个周期,该语句就能保证曲线图形绘制一个周期。
c = c*Math.PI/180;
//将初相值转换为弧度值;
for (n; n<=nn; n++) {
    bn = “dot” add n;
    //获取新复制的电影夹名;
    duplicateMovieClip (“dot”, bn, n);
    //复制新的电影夹,并对新复制的电影夹命名为bn, 并设置其显示深度为n;
    setProperty (bn, _x, startX+n);
    //设置刚复制的电影夹的x轴坐标值;
    setProperty(bn,_y, startY-a*(Math.sin(b*n*Math.PI /180+c)*100));
    //设置刚复制的电影夹的y轴坐标值;
    }
}
        5.5新增“标签”图层,选择工具栏中的文字工具,在主电影场景中输入以下文字y=A*sin(bx+φ),设置好文字的字体、字号及颜色等。按同样的方法作好其它几个标签。
        5.6 添加“文本框”图层,同样选择工具栏的文字工具,而后选择“窗口/面板/文字选项”菜单。此时系统将弹出“文字选项”面板,在该面板中选择文字框的类型为“输入”,选中“边线/背景”复选框后在主场景中按下鼠标拖动,这样就创建了一个输入文字框,在Flash动画的动行过程中,我们就可以与动画交换信息了。这时你会看到“文字选项”面板中的“变量”框中出现了“TextField1”,将其改为“texta”。按同样的方法创建“textb”和 “textc”两个输入文字框。
        调整场景中各对象的位置,使它们协调美观。这样我们的SIN()函数作图动画就作好了,按“Ctrl+Enter”测试电影,其最终效果如图3示:
(图3:sin(x))
         当我们改变a或b的值,使其大于1时会发现这个作图动画还不完善,它的图形是不连续的一些点画线。为此我们将它作进一步的修改,将“绘图”按钮的动作语句更改为:
              on (press) {
                       nn=360;
                      a = texta;
                      b = textb;
                      c = textc;
              if(b<1){
                      nn=360/b;
                      }
              c = c*Math.PI/180;
              for (n; n<=nn; n++) {
              bn = “dot” add n;
              duplicateMovieClip (“dot”, bn, n);
              setProperty (bn, _x, startX+n);
              setProperty(bn,_y, startY-a*(Math.sin(b*n*Math.PI /180+c)*100));
              if ((n>1) and (n<nn )) {
              tn = “dot” add (n-1);
             setProperty(bn,_height,3*Math.abs(getProperty(bn, _y)-getProperty(tn, _y)));
             if (getProperty(bn, _height)<dot._height) {
                 setProperty (bn, _height, dot._height);
                 setProperty (bn, _width, dot._width);
                 }
          }     
   }
}
        这样,我们即使输入较大的a和b也都可得到满意的曲线图。其最终效果如图4示:
(图4:最终效果)
        在这里我们只以SIN()函数为例,对Flash中绘制函数图形进行了说明,只要我们掌握了这种基本方法,对于其它函数的图形绘制也就很容易了。
 
                        参考文献


1 王红霞、赵书俊、陈继明.Flash 4.北京:人民出版社,2000
2 丁建超.Flash 5高级实例教程.北京:中国青年出版社,2001
3 http://www.iching.topcool.net
4 http://www.macrmedia.com

 Student: Patrick, I’ve been learning English for a long long time, and I still can’t speak good English. I am really disheartened.
  Patrick,我学英语好久了,可我还是说不好英语,我都灰心了。
  Patrick: Take your time. Anyway, Rome wasn’t built in a day.
  别急。毕竟冰冻三尺非一日之寒。
  Student: Can you make some suggestions?
  你能给我点儿建议吗?
  Patrick: Sure. English is becoming an international language. It’s really important. But like anything else, you really need to practice and practice before you can do it well.
  好的。英语日渐成为一种国际语言,它非常重要。可就像任何事情一样,你真的需要做大量的练习才能学好。
  Student: How?
  怎么练?
  Patrick: Well, let me give you an example. You know, when people first learn to drive a car, they can’t do it well. They make lots of mistakes. They may step on the gas when it’s time to stop the car. But that’s natural. That happens to everyone.
  嗯,给你举个例子吧。你知道,当人们学开车的时候,他们会犯很多错误。在该刹车的时候他们可能会踩油门。可那很正常,每个人都犯这种错误。
  Student: I know what you mean.
  我懂你的意思。
  Patrick: Learning English is just like driving a car. All you have to do is practice and don’t be afraid of making mistakes. The more mistakes you make, the quicker you can speak good English.
  学英语就像学开车一样,你需要做的就是练习,别怕犯错。你犯的错误越多,说英语的水平就提高得越快。
  Student: It’s easy to say, but hard to do.
  说起来容易做起来难啊。
  Patrick: Just take your time. I’m always glad to help and don’t forget, language is not just about words or grammar rules. Cultural background plays a vital role as well.
  别着急啊,我会帮你的。语言不仅仅是单词加语法,文化背景也很重要。
  Student: Jesus. What can I do before I can speak good English?
  老天,我该怎么办哪?
  Patrick: Just pick up the phone and practice with me. I’m not God, but I’m sure I can better your English.
  拿起电话和我练习就行了。我不是上帝,可我肯定能帮你学好英语。
  
  Attention Please…特别提醒
  [1] I am really disheartened.
  disheartened是灰心的意思。当人们没能做成事情的时候,他们会说:I’m really frustrated. 我真的绝望了。口语中的另一个类似高频词是upset,它表示担心,外加一点儿忧伤。
  [2] Rome wasn’t built in a day. 直译是:罗马并非一日建成,对应的中译只有:“冰冻三尺非一日之寒”最得该意境。用这句话来比喻学习英语的艰辛可谓再恰当不过,不过还要记住熟能生巧——Practice makes perfect,这才是学习英语的最佳办法。
  Useful Tools…实用句式
  A: Hello, may I speak to John (or sb.), please? (你好,John在吗?)
  B: You are speaking to him / Speaking. (我就是。)