在PowerPoint课件中,插入Flash动画已经不是什么新鲜事了。 这不,这次的英语课件中,应英语老师的要求,插入了网上找 来的一个Flash英文歌,果然为课件增色不少。但英语老师提出 要在课件中控制这个英文歌,比如说播放、暂停、快进、快退 等。呵呵,这倒也难不倒我,用Office中的VBA就可以做到。
插入Flash影片
单击“视图/工具栏/控件工具箱”,选择“其他控 件/Shockwave Flash Object”,在幻灯片中用鼠标拖出一个方框,调整好大小。这 样,我们用插入控件的方法插入一个Flash控件,选择当前控件 ,在“属性”面板中作如下设置:“Movie”中填入所需的 Flash影片名称,“名称”就用默认的“ShockwaveFlash1”, 这个名称在后面的VBA编程中要用到。
插入命令按钮
1. 制作(播放)按钮
在“控件工具箱”中选择“命令按钮”,在幻灯片中拖 动,即可拖出一个命令按钮。调整好大小,在“属性”面板中 作如下设置:“名称”中输入“cmd_play”,“Caption”中输 入“播放”。双击该按钮,进入VBA编辑窗口,输入如下内容:
PrivateSubcmd_play_Click()
ShockwaveFlash1.Playing=True
EndSub
2. 制作(暂停)、(前进)、(后退)、(返回)、( 结束)按钮
按钮制作的方法同上。“属性”面板中分别作如下设置 :暂停按钮的“名称”为“cmd_pause”,“Caption”为“暂 停”;前进按钮按钮的“名称”为“cmd_forward”, “Caption”为“前进”;后退按钮的“名称”为“cmd_back” ,“Caption”为“后退”;返回按钮的“名称”为 “cmd_start”,“Caption”为“返回”;结束按钮的“名称 ”为“cmd_end”,“Caption”为“结束”。
分别为各个按钮加上VBA,命令依次如下:
PrivateSubcmd_pause_Click()
ShockwaveFlash1.Playing=False
EndSub
PrivateSubcmd_forward_Click()
ShockwaveFlash1.FrameNum=ShockwaveFlash1.FrameNum+30
ShockwaveFlash1.Playing=True
EndSub
PrivateSubcmd_back_Click()
ShockwaveFlash1.FrameNum=ShockwaveFlash1.FrameNum-30
ShockwaveFlash1.Playing=True
EndSub
PrivateSubcmd_start_Click()
ShockwaveFlash1.FrameNum=1
ShockwaveFlash1.Playing=True
EndSub
PrivateSubcmd_end_Click()
ShockwaveFlash1.FrameNum=ShockwaveFlash1.TotalFrames
EndSub
说明:在(前进)、(后退)、(返回)按钮中,后面均加上 一条播放命令,是因为在实际应用时,发现后面如果没有播放 命令的话,Flash影片会停止播放,所以这句是万万不可少的。
3. 播放幻灯片
看看按钮是不是可以控制影片了呢?什么?没反应,那 一定是你的宏的安全性设得太高了,单击“工具/宏/安全性” ,将“安全级”设为“低”。重新打开PowerPoint,可以了吧 。