随着Flash 5的发布,Flash赢得更多用户的青睐。本文介绍在Authorware中利用ActiveX调用并控制播放Flash动画的方法。
首先准备一个SWF文件备用。
打开Authorware,新建一个项目文件。在"Insert"菜单中选择"Control\ActiveX"。(如图1)
在"Select ActiveX Control"对话框中选择"Shockwave Flash Object",点击"OK"。(如图2)
在弹出的"ActiveX Control Properties"对话框中,单击"Custom…"按钮,弹出"Authorware 属性"对话框(如图3)。
在Movie URL中填入将要播放的Flash文件的详细路践,如"C:\myfile\test.swf";选择Quality=high;Scale=Showall;Window mode=Show all;去掉"Loop"、"Show Menu"两个项的复选。点击"确定"。 点击"OK"。
将ActiveX控件命名为"Flash movie"。
执行此文件,会发现Flash文件在一个很小的区域内播放。此时,点击"控制面板"上的
按钮,播放窗口四周出现虚线,单击虚线,出现选择句柄,用鼠标按住句柄拖动,可以改变大小,按住虚线拖动可改变位置。调整完成后,执行,可看到效果。下面我们来看,怎样实现控制播放。
首先看Authorware中的一个函数。
CallSprite
用法:CallSprite(@"SpriteIconTitle", #method , [argument...])
功能:该函数执行一个ActiveX控件的方法。
其中,SpriteIconTitle为ActiveX控件图标的名称,method , [argument...]为ActiveX控件的方法的名称及相应的参数。如果没有参数,argument可以省略。
有了这个函数,我们就可以通过执行ActiveX的方法来实现控制播放。
双击"Flash movie"图标,点击"Options…",点击"custom…",去掉"play"项的复选。此项操作使Flash动画不自动播放,而用按钮来控制。
在流程线上放置一个交互图标,命名为Ctrl,在其右侧放置两个运算图标,分别命名为"play","stop"。响应类型为"button"。
在运算图标"play"中我们调用ActiveX控件"Shockwave Flash Object"的"play"方法来使"flash movie"开始播放。具体内容为:
CallSprite(@"flash movie", #play)
在运算图标"stop"中我们调用"stop"方法来使"flash movie"停止播放。具体内容为:
CallSprite(@"flash movie", #stop)
调整两个按钮的位置,点击
执行。现在,我们可以通过两个按钮来控制flash动画的播放和停止。这样,整个程序就设计好了,最终的流程图如图4所示。
需要指出的是,要使这个程序能在其它机器上执行,必须保证其它机器上安装了Flash的ActiveX插件。在Flash的安装目录中,players文件夹下有Flash的ActiveX插件的安装程序InstallAXFlash.exe。把这个程序提供给用户可实现在任何机器上执行此程序。