用Authorware开发MCAI软件的应用技术

Author: 徐海龙 Date: 2000年 第3期

  Authorware是Macromedia公司推出的一种多媒体创作系统,该系统功能强大,广泛应用于多媒体辅助教学,交互式自动售货亭,企业产品公开演示,在线杂志等各领域。在我国,Authorware在教育软件开发与娱乐软件开发领域的应用非常普及。笔者在负责开发MCAI(Multimedia Computer Assisted Instruction多媒体计算机辅助教学)软件过程中,在Authorware的应用技术方面作了些总结。特撰此文,愿与各位MCAI开发者交流。
#1  一、充分使用系统编程语言,灵活实现特殊功能
  Authorware是一种多媒体创作工具,它为开发者提供了一个灵活的工具——计算图标,通过该图标可以利用Authorware的编程语言灵活地实现一些特殊功能。如通过点击屏幕上的“声音控制”区域来实现背景音乐的开关切换,用一个热区响应与一个计算图标便可轻松解决:
  假设软件前部分已初始化好所有界面,并定义了一变量“Sound”(初值为1),用来控制程序的走向。从工具菜单拖一交互图标至流程线上,并命名为“声音控制”;再拖一计算图标至该交互图标右侧,响应类型设为“热区响应”,并把热区虚线框包围在演示界面上的“声音控制”区域。打开“声音切换”计算图标,在其中写入如下程序段:
  If sound=1 then
    Mediepause()
    Sound:=0
  Else
    Mediaplay()
    Sound:=1
  End if
  另外,用Authorware的编程语言与系统函数,可以方便地实现简单的图形绘制,还可以进入绘图模式,让用户进行绘图。在流程线上加一个计算图标,并在其中加入下面的程序代码就可以在屏幕上画出一条横向的“S”型正弦曲线:
  i:=100
  j:=100
  x:=0
  Repeat While x<200
  y:=SIN(x/100*3.14)*100/3.14
  Line(2,i+x,j-y,i+x,j-y )
  x:=x+1
  End repeat
#1  二、调用外部函数播放MP3音乐、显示GIF动画
  Authorware支持AIFF、PCM、SWA、VOX、WAVE格式保存的声音文件。最普通的WAVE声音文件动辄就几兆、几十兆,而很受大众欢迎的MP3之类的声音文件却无用武之地。另外,那小巧玲珑的GIF动画用Authorware调入后,只能显示第一帧图形——动画变成了“死画”。其实,只要引入一些相关的外部函数就可以解决了!打开Authorware菜单栏上的[Winndow→Function],从函数类别中选中用户的自定义函数,并单击“Load”按钮,从Authorware安装盘中的UCD文件夹中引入相应的外部函数,就可以用其中的函数来实现Authorware本不支持的功能了。
  1.自制MP3播放器
  用上述方法从Mp3player.u32文件中引入其中的所有函数,假设Main.mp3文件在主文件同一目录下。下面我们来制作一个MP3播放器:(流程如^03020602a^1)
  在“设置窗口尺寸”计算图标中写入“ResizeWindow(350,150)”设置播放器面板大小;
  在“背景”显示图标中导入一幅背景图;
  在“预设”计算图标中写入  “tMsMP3CreatePlayer(WindowHandle,1)”,“tMsMP3LoadFile(FileLocation^“Main.mp3”)”
  其中“tMsMP3CreatePlayer()”,“tMsMP3LoadFile()”是用于创建MP3播放程序和导入MP3文件的外部函数。
  在“播放”计算图标中写入“tMsMP3Play(Repeat,Times)”,参数“Repeat”可选“True”或“False”用来控制是否循环播放,参数Times可限定播放次数(在Repeat参数为False的情况下有效);
  在“暂停”计算图标中写入“tMsMP3Pause()”;
  在“停止”计算图标中写入“tMsMP3Stop()”;
  在“退出” 计算图标中写入“Quit(1)”。
  这样,一个简洁的MP3播放器就做成了(如^03020602b^2)。
  2.显示GIF动画
  用同样的方法从Animgif.u32文件中引入其中的所有函数,假设Test.gif动画文件在主文件同一目录下,流程图如^03020602c^3所示。
  在“显示动画”计算图标中引入函数:“DisplayAnimatedGif(WindowHandle,FileName,Left,Top,Color)”其中参数“FileName”可填为FileLocation^“Test.gif”;参数“Left”,“Top”分别用来确定动画在屏幕上的显示位置;参数“Color”用来设置动画的显示背景色,选项为1至16的数字,分别代表各种颜色,可自由选择。
  在“删除动画” 计算图标中写入 “EraseAnimatedGif()”
  这样,你就可以在程序中加入任何可爱的小动画了,不过千万注意:GIF动画用Authorware的删除图标或系统函数“EraseIcon()”来删除是行不通的,必须用外部函数“EraseAnimatedGif()”才能删除。而且在退出之前,必须要把该函数的所有GIF动画删除,否则,系统会警告你“执行非法操作!”,并可能导致系统崩溃。
  Authorware是一套功能强大的多媒体制作工具系统,它基于设计图标、以流程线为结构的环境,面向对象可视化编程,使人们入门较容易,但要精通Authorware设计MCAI技术却非易事。笔者只是就Authorware设计技术很少的几个方面作一些探讨,希望能得到各位MCAI开发者的指教。