图1
载入函数
我们以mp3play.a5p为例,把mp3player.u32和mpegdll.dll拷贝至mp3play.a5p目录下。打开mp3play.a5p,点击工具栏里的[Functions Window]按钮,出现Function窗口后,点击Category下的按钮,选择mp3play.a5p,此时窗口左下方的[Load]按钮变为可用,如图1所示。点击[Load],选择mp3player.u32打开,即可出现如图2所示的画面,全部选定Load后即可完成函数载入。
图2
函数格式
成功载入函数后,可以看到共有六条命令:
tMsMP3CreatePlayer(WindowHandle, messageVar)
tMsMP3LoadFile(Filename)
tMsMP3Play(repeat, times)
tMsMP3IsPlaying()
tMsMP3Pause()
tMsMP3Stop()
其中tMsMP3CreatePlayer(WindowHandle,messageVar)的作用是创建一个MP3播放实例,此命令必须在其他命令之前执行。WindowHandle为Authorware的窗口变量,可用SetWindowText(WindowHandle,LPCSTR lpString)来设置,也可不定义。messageVar为MP3player的事件信息变量,此变量将自动从MP3player中接收一个返回值。其中0 = Opened,1 = Ready,2 = Stopped,3 = Playing,4 = Paused。当然此函数中messageVar变量也可不指定,如:tMsMP3CreatePlayer(WindowHandle, ″″)。
tMsMP3LoadFile(Filename)的作用是将一个MP3文件调入缓冲器,但不播放。变量Filename的内容为MP3文件的路径。
tMsMP3Play(repeat, times)的作用是播放前一个函数所载入的MP3文件。Repeat为播放次数状态设定,若Repeat为1则可重复播放,为0则只播放一次;times为重复播放的次数的状态,注意不是重复播放的次数。
组合如下:
repeat =0,times任意,则只播放一次;
repeat =1,times=0,则重复播放直到被停止;
repeat =1,times>0,则重复播放times指定的次数。
tMsMP3IsPlaying()为MP3文件播放的状态,返回值为1则正在播放,为0则表示停止状态。
tMsMP3Pause()的作用是暂停正在播放的MP3文件,用tMsMP3Play()命令来恢复播放。
tMsMP3Stop()的作用是停止正在播放的MP3文件。
应用示例
若有一MP3文件在C:mp3ding.mp3中。程序流程如图3所示。
图3
创建、变量赋值并载入MP3文件,详见图4。其他功能在相应计算图标中输入下列命令即可。
图4
播放: tMsMP3Play(0, 0)
暂停:tMsMP3Pause()
恢复播放:tMsMP3Play()
停止:tMsMP3Stop()
状态:在显示图标中键入{tMsMP3IsPlaying()},即可显示播放与否。
OK!大功告成,现在让我们一起来欣赏优美的MP3音乐吧!
经过以上练习,相信你一定能够熟练地在Authorware中使用MP3了。
以上程序在Authorware 4.0和Authorware 5.0 Attain中调试通过。

