高中信息教学

Flash课件控制声音播放三法

 在众多的多媒体课件制作软件中,Flash以其完善的媒体支持功能、功能强大的交互程序设计能力、强劲的兼容性和广阔的发展空间,深受众多老师们的喜爱。在Flash课件中,为了增强教学效果,更好地表达教学内容,通常会在制作课件时加入声音文件,而这些声音文件播放时能否自如的控制,则是令广大教师比较头疼的问题。在此,仅把个人的一些应用经验介绍给大家,希望能对老师们有所帮助。

  一、影片剪辑控制法

  步骤1:将声音文件导入到库中。执行【文件】|【导入】|【导入到库】命令,在弹出的对话框中找你要添加的声音文件然后打开。

  步骤2:创建“声音”影片剪辑。执行【插入】|【新建元件】命令,创建一个元件,名称为“声音”,类型为“影片剪辑”,单击“确定”按钮,进入“声音”影片剪辑编辑状态。敲F11键打开库面板,将声音文件拖放在场景中,在时间轴上添加普通帧至音频结束。在属性面板上设置其【同步】为【数据流】。

  步骤3:回到主场景,添加新图层,命名为声音。从库中拖出“声音”影片剪辑到场景中,在属性面板上设置其实例名为“mc”。

  步骤4:新建一层,取名语句层,单击第一帧按,敲F9键打开动作面板,加语句:

_root.mc.stop();

  步骤5:用按钮来控制声音的播放和停止。再新建一层,取名按钮层,执行【窗口】|【其他面板】|【公用库】|【按钮】命令,从公用库中拖出两个按钮(播放按钮和停止按钮),放在场景中。

  选中场景中的播放按钮,打开动作面板加语句:

  on (press) { //鼠标单击按扭后

  _root.mc.play(); //声音 mc播放

  }

  再选中停止按钮,加语句:

  on (press) { //鼠标单击按扭后

  _root.mc.stop(); //声音 mc停止

  }

  也可以用一个按钮来控制声音的播放和停止,具体方法如下:

  从公用库里拖一个按钮到按钮层,放在场景中的合适位置,然后选中此按钮,打开动作面板加如下语句:

  on(press){ //鼠标单击按扭后

  if (bofang==1) { //如果变量bofang等于1执行下面的动作

  _root.mc.play(); // 声音 mc播放

  bofang = 0 //赋 0 给变量bofang

  } else { //否则执行下面的动作

  _root.mc.stop(); //声音 mc停止

  bofang=1 //赋予 1 给变量bofang

  }

  }

  二、链接控制法

  步骤1:将声音文件导入到“库”中。右击“库”中的声音对象,在弹出的快捷菜单中选择“链接”命令,打开“链接属性”对话框,勾选“为动作脚本导出”和“在第一帧导出”复选项,设置标识符为“yin”。

  步骤2:在第1帧上添加如下脚本:

  mySheng = new Sound(); //建立一个名为 mySheng的声音对象

  mySheng.attachSound("yin"); //将链接标识符为yin的音乐捆绑到mySheng对象上

  步骤3:用按钮来控制声音的播放和停止。

  在播放按钮上添加如下脚本:

  on (press) { //鼠标单击按扭后

  mySheng.start(); //声音开始播放

  }

  在停止按钮上添加如下脚本:

  on (press) { //鼠标单击按扭后

  mySheng.stop(); //声音停止

  }

  用一个按钮来控制声音的播放和停止的方法:

  在按钮上添加如下脚本:

  on (release) { //鼠标单击按钮并释放后

  k = k+1; //变量k递增

  if (k%==1) { //当k是奇数时

  mySheng.start(); //开始播放声音

  } else { //否则(可以认为当k不是奇数时)

  mySheng.stop(); //声音停止

  }

  }

  注:k是一个变量名,参加运算的变量,这里用来代表点击按钮的次数。当然,先得给变量一个初始值,那我们会发现k的初始值我们还没有给出,所以单击语句层的第一帧,在原有语句的基础上加一条:k=0;那么此时第一帧上的语句应该是:

  mySheng= new Sound();

  mySheng.attachSound("yin");

  k = 0;

  三、外部文件调用控制法

  步骤1:准备一文件名为yin.mp3的声音文件,将它放在课件文件的同一个文件夹下。

  步骤2:在Flash课件中,添加播放按钮,在这个按钮上添加脚本:

  on (release) { //鼠标单击按扭并释放后

  mySheng = new Sound(); //建立一个名为mySheng的声音对象

  mySheng.stop(); //先让声音不播放;

  mySheng.loadSound("yin.mp3", false); //加载文件名为 yin.mp3 的外部声音文件到mySheng 对象中。第二个参数决定是以“事件”方式载入还是以“数据流”方式载入。如果为 true,则使用数据流方式载入,只要载入的音乐数据足够启动解码器,声音就会自动播放;如果参数为 false,则是事件方式,只有在音乐文件全部载入后才能够使用 start()进行播放。这里采用事件方式。

  mySheng.start();    //声音开始播放;

  }

  步骤3:再做一个按钮用来控制声音的停止,在这个按钮上添加脚本:

  on (release) {      //鼠标单击按扭并释放后

  mySheng.stop();    //停止声音播放

  }

  也可以用一个按钮来控制声音的播放和停止,有兴趣的话,朋友们可以试一试。

  以上只是笔者在应用中的一些心得,声音控制的内容还很多,这需要大家多用、多练、认真体会,在多次试验之后,你会在发现问题之中,学会解决问题,这样学到的知识会令你终生难忘。


__________________________________________________________________________________________________________________________________________________________
地址:江西省新余市渝东大道
电话:13879088213
邮箱:392217809@qq.com