论文部分内容阅读
对于内容多、结构复杂的大型课件,应采取一种系统、科学的设计方法。在设计课件时,主要使用结构化、模块化的程序设计方法。具体思路是,根据课件的内容,将其分解为一个主控模块和几个功能模块,如果需要,将功能模块再细化为几个功能子模块。主控模块用来控制和调度各个功能模块的播放,各个功能模块用来具体实现相应课件内容的展示,如图1所示。
一、多场景技术
利用Flash的多场景技术可以实现模块化课件设计的思想。Flash影片文档可以包含多个场景,每个场景都包括自己的时间轴,可以根据需要将复杂的动画内容分解到多个场景中进行制作。把课件分成一个主控模块和几个功能模块,然后把每个模块通过场景来制作,每个场景都可以独立地制作属于这个场景的课件内容。
Flash提供了一个“场景”面板,在其中可以进行添加场景、命名场景、排列场景的次序等操作。选择“窗口/其他面板/场景”命令,打开“场景”面板。单击“场景”面板右下角的“添加场景”按钮,可以添加场景。添加的场景名称依次为默认的“场景2”、“场景3”……如图2所示。
默认情况下,播放一个多场景的动画时,将按照它们在“场景”面板中的排列顺序逐次播放。但是,多场景课件不能按照“场景”面板中的顺序逐次播放,需要单独设计一个导航场景,用于控制整个课件的交互播放,这个场景实际上就是实现课件的主控模块的功能。图3是多场景导航课件的设计思路。
运行课件时,先播放场景1(主控模块)的内容。这个场景中需要设计一些导航按钮,用户单击按钮即可跳转到相应的场景播放课件功能模块的内容。
整个课件的交互功能需要使用ActionScript进行编程。因为每个场景都是一个独立的课件模块,所以在每个场景的时间轴最后一帧要加上停止播放的动作脚本:
stop();
这样可以保证播放完每个场景后,停止在当前场景中。
课件的导航控制主要是通过主控模块场景中的按钮来实现。另外,在每个功能模块中也分别设计一个返回按钮,用来返回主控模块场景。这些按钮中动作脚本的一般形式是:
on(press){
gotoAndPlay(“场景名”, 1);
}
动作脚本的含义是,当单击按钮时,课件转到某一个场景的第1帧并开始播放,脚本中的“场景名”参数决定了具体转到哪一个场景。
利用Flash的多场景技术设计多媒体课件,优点是代码简单,结构清晰,是一种典型的多模块程序设计思路。另外,因为每个课件功能模块单独占用一个场景,所以当课件内容多,具有二级功能模块时,这种方法也能应付自如。
二、加载外部影片技术
利用Flash的加载外部影片的技术也可以实现模块化课件设计的思想。Flash提供一个load MovieNum()函数,它可以在一个swf影片中加载外部的swf影片。将课件分解为若干课件模块(包括一个主控模块和若干功能模块),把每个课件模块制作成独立的Flash影片,最后利用load MovieNum()函数实现各个课件模块间的相互调用,实现模型如图4所示。
根据课件内容,将各个课件功能模块制作成独立的Flash影片,并导出相应的swf文件。课件主控模块也制作成独立的Flash影片,其中主要设计一个导航菜单。导航菜单由若干按钮组成,按钮和课件的功能模块相对应。单击导航菜单中的按钮可以载入相应的课件功能模块swf影片。在每个功能模块影片中也设计一个返回到主控模块影片的按钮。这些导航控制按钮上的程序代码的一般形式是:
on(release){
loadMovieNum(“URL”, level);
}
程序代码的功能是,当单击并释放按钮时,加载指定的swf影片。
URL:设置加载的swf文件的绝对路径或相对路径。这里一般都使用相对路径,即直接用swf文件名替代这个参数。这时,必须让多个swf文件(主控模块和若干功能模块)都存放在相同的文件夹下。
Level(级别):用于设置将动画加载到哪一级界面上。在Flash播放器中,按照加载的顺序,影片文件被编上了号。第一个加载的影片将被放在最底层(0级界面)上,以后载入的影片将被放在0级以上的界面中。例如,在一个主影片中利用下面的程序代码加载另一个影片:
loadMovieNum(“概述.swf”,0);
这个函数将要加载的“概述.swf”的级别设置为0,由于主影片默认的也在0级别上,所以被加载的影片将取代原来0级别上的主影片文件。如果把加载的影片的级别定义为1:
loadMovieNum(“概述.swf”,1);
则0级别上的主影片不会被加载的影片取代,两个影片会同时存在,一个在0级别上,另一个在1级别上。当不想让加载进来的影片将主控影片中的导航菜单覆盖时,可以采用这种级别设置。
loadMovieNum()函数中的level参数对设计课件导航结构很重要。实际工作中,要根据具体的导航实现思路来设置level参数,从而确定被加载的影片是否覆盖原有影片。
利用loadMovieNum()函数制作课件导航功能的优点是,课件既较好地实现了模块化课件设计的思想,又使课件具备了很强的网络特性。因为这种类型的课件在播放时,并不把全部的课件模块都装载到计算机的内存中,只先装载课件的主控模块,需要时,再在课件主控界面上单击控制按钮把其他的课件模块装载运行。这种方法很适合制作网络型Flash课件,具有广阔的应用前景。
(作者单位:河南大学计算机与信息工程学院河南开封教育学院)
一、多场景技术
利用Flash的多场景技术可以实现模块化课件设计的思想。Flash影片文档可以包含多个场景,每个场景都包括自己的时间轴,可以根据需要将复杂的动画内容分解到多个场景中进行制作。把课件分成一个主控模块和几个功能模块,然后把每个模块通过场景来制作,每个场景都可以独立地制作属于这个场景的课件内容。
Flash提供了一个“场景”面板,在其中可以进行添加场景、命名场景、排列场景的次序等操作。选择“窗口/其他面板/场景”命令,打开“场景”面板。单击“场景”面板右下角的“添加场景”按钮,可以添加场景。添加的场景名称依次为默认的“场景2”、“场景3”……如图2所示。
默认情况下,播放一个多场景的动画时,将按照它们在“场景”面板中的排列顺序逐次播放。但是,多场景课件不能按照“场景”面板中的顺序逐次播放,需要单独设计一个导航场景,用于控制整个课件的交互播放,这个场景实际上就是实现课件的主控模块的功能。图3是多场景导航课件的设计思路。
运行课件时,先播放场景1(主控模块)的内容。这个场景中需要设计一些导航按钮,用户单击按钮即可跳转到相应的场景播放课件功能模块的内容。
整个课件的交互功能需要使用ActionScript进行编程。因为每个场景都是一个独立的课件模块,所以在每个场景的时间轴最后一帧要加上停止播放的动作脚本:
stop();
这样可以保证播放完每个场景后,停止在当前场景中。
课件的导航控制主要是通过主控模块场景中的按钮来实现。另外,在每个功能模块中也分别设计一个返回按钮,用来返回主控模块场景。这些按钮中动作脚本的一般形式是:
on(press){
gotoAndPlay(“场景名”, 1);
}
动作脚本的含义是,当单击按钮时,课件转到某一个场景的第1帧并开始播放,脚本中的“场景名”参数决定了具体转到哪一个场景。
利用Flash的多场景技术设计多媒体课件,优点是代码简单,结构清晰,是一种典型的多模块程序设计思路。另外,因为每个课件功能模块单独占用一个场景,所以当课件内容多,具有二级功能模块时,这种方法也能应付自如。
二、加载外部影片技术
利用Flash的加载外部影片的技术也可以实现模块化课件设计的思想。Flash提供一个load MovieNum()函数,它可以在一个swf影片中加载外部的swf影片。将课件分解为若干课件模块(包括一个主控模块和若干功能模块),把每个课件模块制作成独立的Flash影片,最后利用load MovieNum()函数实现各个课件模块间的相互调用,实现模型如图4所示。
根据课件内容,将各个课件功能模块制作成独立的Flash影片,并导出相应的swf文件。课件主控模块也制作成独立的Flash影片,其中主要设计一个导航菜单。导航菜单由若干按钮组成,按钮和课件的功能模块相对应。单击导航菜单中的按钮可以载入相应的课件功能模块swf影片。在每个功能模块影片中也设计一个返回到主控模块影片的按钮。这些导航控制按钮上的程序代码的一般形式是:
on(release){
loadMovieNum(“URL”, level);
}
程序代码的功能是,当单击并释放按钮时,加载指定的swf影片。
URL:设置加载的swf文件的绝对路径或相对路径。这里一般都使用相对路径,即直接用swf文件名替代这个参数。这时,必须让多个swf文件(主控模块和若干功能模块)都存放在相同的文件夹下。
Level(级别):用于设置将动画加载到哪一级界面上。在Flash播放器中,按照加载的顺序,影片文件被编上了号。第一个加载的影片将被放在最底层(0级界面)上,以后载入的影片将被放在0级以上的界面中。例如,在一个主影片中利用下面的程序代码加载另一个影片:
loadMovieNum(“概述.swf”,0);
这个函数将要加载的“概述.swf”的级别设置为0,由于主影片默认的也在0级别上,所以被加载的影片将取代原来0级别上的主影片文件。如果把加载的影片的级别定义为1:
loadMovieNum(“概述.swf”,1);
则0级别上的主影片不会被加载的影片取代,两个影片会同时存在,一个在0级别上,另一个在1级别上。当不想让加载进来的影片将主控影片中的导航菜单覆盖时,可以采用这种级别设置。
loadMovieNum()函数中的level参数对设计课件导航结构很重要。实际工作中,要根据具体的导航实现思路来设置level参数,从而确定被加载的影片是否覆盖原有影片。
利用loadMovieNum()函数制作课件导航功能的优点是,课件既较好地实现了模块化课件设计的思想,又使课件具备了很强的网络特性。因为这种类型的课件在播放时,并不把全部的课件模块都装载到计算机的内存中,只先装载课件的主控模块,需要时,再在课件主控界面上单击控制按钮把其他的课件模块装载运行。这种方法很适合制作网络型Flash课件,具有广阔的应用前景。
(作者单位:河南大学计算机与信息工程学院河南开封教育学院)