課件插入 Flash 英文歌後,需精確控制播放進度。透過 ActiveX 控件屬性與方法,撰寫 VBA 事件程序,打造專業級播放控制列。
Movie 填 SWF 路徑,Name = ShockwaveFlash1cmd_play、cmd_pause、cmd_forward、cmd_back、cmd_start、cmd_end,Caption 設對應文字Private Sub cmd_play_Click()
ShockwaveFlash1.Playing = True
End Sub
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
FrameNum:當前影格編號(1-based),操作此屬性實現跳轉TotalFrames:總影格數,跳至結束Playing = True:快轉/倒帶/重頭後**必須重設為 True**,否則影片停在該影格不動「工具」→「巨集」→「安全性」→ 設「低」(或「中」啟動時選擇啟用巨集),重開 PPT 生效。
此法將無控制介面的 SWF 變為可精確操作的教學媒材,適用語言聽力、音樂賞析、動畫逐幀分析等場景。