应用思考-教育技术论坛

标题: 用Flash整合swf课件(转帖) [打印本页]

作者: 铁血    时间: 2007-12-11 16:17
标题: 用Flash整合swf课件(转帖)
用Flash整合swf课件   
  日常教学做课件,特别是用Flash做课件时,不可能所有的内容都是亲手来做,有时候经常会用到网络下载的积件、课件、swf文本特效,菜单等,然后用flash整合,即便自己制作,多使用载入、多场景、也会使过程清晰明了,易于测试保存。所以loadmovie和loadmovienum是很实用也是很常用的。以前用他们时遇到很多问题,虽然网上也拜读过不少教程,但有些问题直到现在才理解,现将一些心得与大家分享。

  一、心得体会:

  1、主课件界面必须大于载入课件的界面,否则载入的课件会遮住课件的导航按钮,虽然遮住了也可以触发,总是不好,所以制作主课件,舞台大小要考虑载入课件的大小。即使没有被遮住,有时候导航按钮也不显示,这时要单击右键,选择“全部显示”按钮才行!
  2、使用loadmovienum中层级的设定,如果全部使用载入的课件,不需显示主课件导航,层级设置为0,可以完全替代!反之层级选择其他数值!
  3、为了使硬盘上的文档看起来有序,如果载入swf量比较多,可以分门别类的建立文件夹,把载入课件放入文件夹里,主课件放在外面,即载入的swf可以放到与主swf同级的文件夹下,但是要指名路径比如:_root.loadmovienum("kejian/huadong.swf",1);
  4、载入的swf可以设置其各种属性:比如:on(release){_root.mc.laodmovie("jiaocheng.swf");_root.mc._xscale=100}设置载入swf就是设置_root.mc的属性。
  再如:_root.loadmovienum("jiaocheng.swf",1);_level1._x=100;设置swf属性就是设置_level1的属性。
  5、载入的swf可以指定跳转帧,这是以前没做到的功能,要实现这个效果可以指定载入的mc或者_levell跳转。
  如:_root.mc.gotoAndStop(8):或_level1.gotoAndStop(200);
  6、比较而言,loadmovienum比loadmovie使用起来简便些!
  7、制作过程中要考虑unloadmovie.
  8、可以做一个框架模板作为课件播放器,用的时候方便!也可以用梦幻龙下载的课件播放模板,但是首页swf需要设置美化!或者配合flash幻灯片使用简便!
  二、Flash课件制作实例:

  我们都知道,SWF文件是Flash输出的标准文件格式之一,它的应用十分广泛,在PowerPiont、Authorware等软件中都可以轻松调用。那么如何在Flash中使用SWF文件呢?本例将为大家详细介绍相关的技术。
  在使用Flash制作课件时,常常需要使用一些现成的SWF文件,通过Flash中的导入命令使用SWF文件,会彻底破坏原有的文件结构。另外,对于大型的课件,我们可以进行分组合作,然后通过调用SWF将课件组合起来,这样可以减小课件主文件的体积,也便于整体合作制作大型课件。
  1、SWF文件的调用及控制
  下面我们通过介绍课件《只有一个地球》(如图所示)的制作方法,来学习调用并控制SWF文件。在图中,灰色部分的尺寸为340×300(像素),这部分就是SWF文件的播放区域。右侧是文字按钮(如:片段一、片段二……),它们是SWF文件的调用按钮,下方是SWF文件的控制按钮,从左往右可以实现的功能有:播放、暂停、快退、快进、回到开头、跳到结尾、增加音量和减小音量。在课件的存放目录中有6个SWF文件,它们是被调用的文件,名称分别为:片段一、片段二、片段三……这些文件的场景尺寸跟灰色部分一样大,都是340×300(像素),另外还有一个片头动画名为:片头动画.swf。
  第1步 启动Flash Mx 2004,使用绘图工具箱中的工具绘制界面,并添加一些文字。分别按“Ctrl+F8”创建所需要的按钮,然后拖放到界面的合适位置。按“Ctrl+F8”创建一个名为“SWF”的影片(MovieClip),里面不进行任何设置,然后按“Ctrl+L”打开Library库,将SWF影片拖放到场景中,并将其中心点和灰色区域的左上角重合,再单击〔Properties〕(属性)按钮,将其“Instance Name”设置为“swf”,最后保存文件到某个文件夹(注意:所调用的SWF也要放置在这个文件夹中,否则将不能调用,如果原SWF文件设置了背景色,在调用时都会自动去除成为透明色)。
  第2步 为场景的第1帧添加如下Actions语句:
  fscommand("fullscreen", true);
  //设置课件全屏播放。
  fscommand("allowscale", false);
  //当课件窗口大小改变时,课件中的内容保持原有尺寸。
  loadMovie("片头动画.swf", "swf");
  //调用片头动画到影片SWF中。
  movie_sound = new Sound(swf);
  //捆绑影片SWF中的声音文件。
  movie_sound.setVolume(50);
  //设置影片SWF中音乐的音量为50,最高是100。
  第3步 为场景右侧的文字按钮加上Actions 语句:
  “片段一”按钮的语句如下:
    on (release) {
    unloadMovie("swf");
    //将SWF影片中的原有内容清除。
    loadMovie("片段一.swf", "swf");
    //调用片段一文件至SWF影片中。
    }
  “片段二”按钮的语句如下:
    on (release) {
    unloadMovie("swf");
    loadMovie("片段二.swf", "swf");
    }
  其余的几个文字按钮的语句与上面类似,只需要改变调用文件的名称即可。

  第4步 下面分别来设置控制按钮的Actions语句:
  “播放”按钮:
    on (release) {
    root.swf.play();
    }//当单击该按钮时,当前场景中的SWF影片播放。
  “暂停”按钮:
    on (release) {
    _root.swf.stop();
    }//当单击该按钮时,当前场景中的SWF影片暂停。
  “快退”按钮:
    on (release) {
    if (_root.swf._currentframe>=40) {
    _root.swf.gotoAndStop(_root.swf._currentframe-40);
    //当单击该按钮时,如果当前帧大于或等于40时,场景中的SWF影片从当前帧处减去40帧,实现快退,这里的40可根据具体情况设置。
    } else {
    _root.swf.gotoAndStop(1);
    //否则SWF影片跳转到第1帧。
    }
  “快进”按钮:
    on (release) {
    _root.swf.gotoAndStop(_root.swf._currentframe+40);
    }
    //单击该按钮,SWF影片从当前帧加上40帧,从而实现了快进。
  “回到开头”按钮:
    on (release) {
    _root.swf.gotoAndStop(1);
  “跳到结尾”按钮:
    on (release) {dangqianzhen = _root.swf._totalframes;
    //设置变量dangqianzhen的数值等于SWF影片的总帧数,即最后一帧。root.swf.gotoAndStop(dangqianzhen);
    //让SWF影片跳转到最后一帧。
    }
  “增大音量”按钮:
    on (release) {
    if (_root.yinliang<=90) {
    _root.yinliang = _root.yinliang+10;
    _root.movie_sound.setVolume(_root.yinliang);
    //如果当前音量的数值小于或等于90就加上10,然后设置SWF影片中的音乐音量为增加后的值。
    } else {
    _root.movie_sound.setVolume(100);
    //否则设置音量为100,这是最大音量。
    }
    }
  “减小音量”按钮:
    on (release) {
    if (_root.yinliang>=10) {
    _root.yinliang = _root.yinliang-10;
    _root.movie_sound.setVolume(_root.yinliang);
    //如果当前音量的数值大于或等于10就减去10,然后设置SWF影片中的音乐音量为减少后的值。
    } else {
    _root.movie_sound.setVolume(0);
    //否则设置音量为0,这样就没有声音了。
    }
    }

  最后在课件发布时,一定要把所有的SWF文件都放置到同一个文件夹中,否则在使用课件时,会提示调用的SWF文件找不到。
  yinliang = movie_sound.getVolume();
  //设置变量yinliang,使其值与影片SWF的音量相等。
作者: 亚选    时间: 2007-12-16 20:16
这么老的资料了,,不过很有用的
作者: etthink    时间: 2007-12-17 08:02
的确如此,这种思路很好!
作者: 炉火叹息    时间: 2012-5-25 10:42
谢谢分享,很有用!




欢迎光临 应用思考-教育技术论坛 (http://etthink.com/) Powered by Discuz! X3.4