越来越多的教师开始学习用flash设计自己的课件并用之于课堂教学。但很多教师不会使用flash,本文通过一个实例,介绍一下如何用FLASH打造出精美的多功能课件。 功能简介: 首先,要简单介绍一下flash:它是一个Macromedia公司出品的动画制作软件,带有丰富的交互功能,配以适当的Action script脚本,能做出功能丰富,画面精美的动画课件。 注:本文中代码后面的“//”表示接下来是代码解释文字 一、先设计出一个漂亮的界面来 打开flash MX 2004,按Ctrl+F8新建一个影片剪辑,取名叫“窗口”。然后在主舞台中画一个窗口界面。(如下图1,大小为550*400,怎么画?你自己想要什么样的就画什么样的吧!) 说明:界面设计不能太花了,但要有主色调。我这里用的是淡绿色。 不建议使用晃眼的色调,因为整个课件要协调好。太黑了使人感到郁闷,太亮了眼睛痛,适中最好。 风格看个人的喜好了,比如我喜欢窗口风格的。也有好多人喜欢无窗口的,全由你自己爱好啦。我这个版面上面是标题栏,右边是按钮控制区,下方是显示一些说明信息。 初步做好后,将它拖放到场景中,刚好与舞台重合。并在“属性”栏中,实例名称中输入:window 二、界面做好后,就要来制作交互用的按钮了 一般我们需要制作3-4种按钮: 1、控制课件的屏幕大小及关闭按钮(名为clos_btn、fullscree_btn、small_btn): 2、响应课件内容及相关操作的通用按钮(因为只要在上面加个名字,就能变成“播放”,“停止”,“音乐”等按钮了); 3、临时按钮:主要在课件中进行临时交互用的。 详细制作方法: 1、点插入--新建元件, 或按crtl+F8, 取名为“按钮”,类型选“按钮”,确定。按钮都有四个帧“向上”(即平常状态)、“经过”(鼠标移上去的样子)、“向下”(鼠标点下去的样子)、“点击”(这里什么色无所谓,它只限定鼠标起作用的范围)。另外还可以为这个按钮加点声音,按下时响一下。方法是,点“文件”-“导入”一个声音来。声音就存在于库中了,在按钮图上新建一层,在“按下”帧插入一个关键帧,将声音从库中拖入编辑窗口中即可。(其实声音还可有好多种设置,这里不必要作过多设置,就不详说了) 2、按自己的想法,分别做好四个不同的帧,这样你的多彩的按钮就做出来了,建议多用渐变色(包括线性和径向)。 3、将做好的按钮拖放到界面中去,命名并输入文字 在库中双击“界面”元件,进入影片剪辑“界面”的编辑状态,新建一层,取名为“按钮”,从库中把做好的按钮拖入到适当的位置,摆放整齐。分别在“属性”栏中的“实例名称”中输入:(不包括后面的汉字) fullscreen_btn全屏 clos_btn 关闭play_btn 播放 stop_btn 暂停 back_btn 返回 music_btn 音乐practice_btn 练习 score_btn 计分 help_btn 帮助 quit_btn 退出 。再新建一层,取名为“按钮文字”,用文本工具在按钮的上面输入各按钮的名称(如下图): 4、为各个按钮输入脚本控制语句: 新建一层,取名为“脚本”。按F9调出动作面板(如果是FLASH MX,请选“专家模式”),然后在空白处输入以下代码: fullcreen_btn.onRelease=function(){ //onRlease表示点击并松开运行(function) fscommand(“fullscree”,true) //fscommand是一个命令语句 fullscreen是全屏 } clos_btn.onRelease=function(){ fscommand(“quit”,true) //quit表示退出 } play_btn.onRelease=function(){ _root.play() //播放 _root.表示主场景,加上这个前缀来控制主时间轴,下同 } stop_btn.onRelease=function(){ _root.stop() //停止 } back_btn.onRelease=function(){ _root.gotoAndStop(“mulu”) //返回到目录帧(你在课件中有目录的帧的属性面板中找到“标签”栏,在其中输入:mulu 这时在时间轴会有一面小红旗和mulu字样) } music_btn.onRelease=function(){ musiccontrol.play() //这里要涉及一个音乐控制影片剪辑,在后面介绍 } practice_btn.onRelease=function(){ _root.gotoAndStop(“practice”) //跳到练习内容(帧标签为practice) } score_btn.onRelease=function(){ score_mc._visible=true //设置计分板为可见,计分板制作将在后面介绍 } help_btn.onRelease=function(){ helpcontrol.play() //设置帮助信息的可见与隐藏控制,后面有相关介绍 } 输入完成后,点一下上部分的小勾,检查脚本有无错误,如果出现错误提示,认真检查,并正确输入。直到提示“此脚本无错误”。 三、制作实现背景音乐控制、计分板、帮助信息面板的影片剪辑 在这里顺便提一下:建议在库中建立几个文件夹,便于管理众多的影片剪辑 单击库面板中左下角的文件夹图标,就会在库中建立文件夹,可以将各种影片剪辑归类存放:如建立“声音”、“按钮”、“面板部件”三个文件夹,再把相应的元件拖入其中。要使用里面的元件时,只要双击文件夹图标即可。 1、制作背景音乐控制元件 导入一个mp3/wav格式的音乐文件,不要太大,以1-4M为佳。导入后,在库面板中会出现一个喇叭形状的图标,将它拖到“声音”文件夹中。 新建一个影片剪辑,取名为“音乐”。将刚才导入的音乐拖入到编辑窗口中,单击第一帧,在“属性”面板中,将“同步”下拉选单中选“数据流”(如下图,为的是让音乐随帧播放,便于控制),然后在700帧左右插入帧(不是关键帧呀!!),如果音乐大概是1分钟就要720帧,自己算算。直到你的最后一帧中无蓝色波形,说明音乐刚好放到那里就完成了。 再新建一个影片剪辑,取名为“音乐控制”。在第一帧的帧动作中输入: stop() music_mc.play() //让音乐放 在第二帧插入一个关键帧,在帧动作中输入: stop() music_mc.stop() //让音乐停 在库中双击“界面”元件进入它的编辑状态,新建一层,取名为“音乐”,将刚才做好的影片剪辑“音乐”和“音乐控制”拖到工作区任意位置,并分别命名为:music_mc和musiccontrol。到此,背景音乐的控制元件就做好了。能在界面中单击“音乐”按钮进行控制了。按Ctrl+Enter键测试一下吧! 2、制作计分板元件 这个里面将要用到“动态文本”,这是一个可以按要求随时改变字符的文本,用来动态显示分数。 新建一个影片剪辑,取名为“计分板”。先画好板面,要注意与主界面相配。并在适当的位置用文本输入各组组号。 新建一层,取名为“分数”,点T文本工具,并在属性栏中,设为“动态文本”,在面板组名下框出六个文本区,并分别取“变量”为s1-s6,如图: 再做一个加分按钮和一个减分按钮(不细说步骤了),将它们拖放六次到计分板的适当位置,实例名为: jia1_btn,jian1_btn,jia2_btn,jian2_btn … …: 新建一层,打开帧动作面板,输入六段下面类似代码: a1 = 0; jia1_btn.onRelease = function() { a1++; //每次单击递加1 s1 = a1; }; Jian1_btn.onRelease = function() { a1--; //每次单击递减1 s1 = a1; } … … (以上是1组的加减分按钮,你就另外加5个的进去吧!只要将1改成2、3、4、5、6即可,注意要认真一点,输完后要检查无误。) 最后还要拖入一个可以将计分板关闭的按钮来,放在右上角,实例名称为:clos_btn ,在帧动作面板中还要加入条: clos_btn.onRelease=function(){ _parent._visible=false //表示上一级(即计分板)不可见 } 这时,计分板己做好。在库面板中,双击“界面”,打开它的编辑状态。 新建一层,取名为“计分”,将做好的“计分板”元件拖入到场景中适当位置,并在“实例名称”输入:score_mc 。你再测试一下你的计分板吧!呵呵! 3、制作帮助信息元件 这个很简单,新建一个影片剪辑,命名为“帮助信息”,画个450*20的矩形,再向里面添加一个动态文本。变量取为 helptxt就行了。 再新建一个只有两帧的类似于音乐控制的影片剪辑:帮助控制 第一帧动作:stop() help_mc._visible=true //帮助为可见 第二帧动作:stop() help_mc._visible=false //帮助为不可见 两个做好了,再在库中双击“界面”进入编辑状态,新建一层,取名为“帮助”,将刚做的“帮助信息”拖到界面的下文横条上。在实例名中输入:help_mc,再将“帮助控制”也拖入,实例名:helpcontrol 。 要实现实时显示帮助信息,还得要加入一些代码,单击“界面”的第一帧,在动作面板中输入: clos_btn.onRollover=function(){ // onRollOver表示在鼠标移到按钮上时触发事件 help_mc.helptxt=”提示:单击关闭本课件” //给动态文本的变量helptxt赋值,下同 } fullscreen_btn.onRollover=function(){ help_mc.helptxt=”提示:单击全屏显示课件” } small_btn.onRollover=function(){ help_mc.helptxt=”提示:单击小屏显示本课件” } play_btn.onRollOver=function(){ help_mc.helptxt="提示:单击播放课件。" } stop_btn.onRollOver=function(){ help_mc.helptxt="提示:单击暂停播放课件。" } back_btn.onRollOver=function(){ help_mc.helptxt="提示:单击返回课件目录。" } music_btn.onRollOver=function(){ help_mc.helptxt="提示:单击播放或停止背景音乐。" } score_btn.onRollOver=function(){ help_mc.helptxt="提示:单击进入小组计分系统。" } practice_btn.onRollOver=function(){ help_mc.helptxt="提示:单击进入练习题。" } quit_btn.onRollOver=function){ help_mc.helptxt=”提示:单击将退出课件” } 另外,有时想在课件上显示时间,可以加一个动态文本,变量为:mytime。并在它所在的帧的帧动作中输入: function showtime(){ var time=new Date() //得到系统时间字符串 mytime=substring(time,11,9) //只截取其中时分秒的部分 } setInterval(showtime,100) //100毫秒刷新一次
提高篇:(可以不做) 1、课件中实现粉笔的功能(即鼠标画线并能擦除): 在主场景帧动作中输入下面的代码可以实现鼠标的画线: _root.onLoad=function(){ i=false; } _root.onMouseDown=function(){ x=_root. _xmouse; y=_root. _ymouse; i=true; _root.moveTo(x,y) } _root.onMouseUp=function(){ i=false; } _root.onMouseMove=function(){ if(i==true){ //判断画线条件 _root.lineStyle(2,oxff0000,100); //确定线型(线宽,RGB色,透明度) _root. lineTo(_root. _xmouse,_root._ymouse) }else{ _root.lineStyle() //如果条件不具备,则利用无线型,不显示线条 } updateAfterEvent() }
还要另加一个按钮来清除画好的线,按钮动作: on(release){ _root.clear() //清除 } 2、让计分等面板成为仿windows窗口,可随意拖动 新建一个影片剪辑,画一个像Windows窗口标题栏样式的条状体,,取名为bar 将它放在计分面板上,实例名设为:bar 然后在它所在帧的帧动作中输入: bar.onPress=function(){ _parent.startDrag() //当鼠标按下时能拖动 } bar.onRelease=function(){ _parent.stopDrag() //当鼠标弹起时停止拖动 } 实际上在所有的面板都可以像这样做,一样可以实现面板可拖动。 |