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