首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> 關於VC++

在 VC++ 中嵌入 Flash 動畫並實現雙向互動

     編輯:關於VC++

兩大步驟

  1. 嵌入:使用 Shockwave Flash Object ActiveX 控制項(flash.ocx/swflash.ocx)
  2. 互動:Flash 側用 FSCommand(cmd, args) 送出訊息;VC++ 側透過類別精靈映射 FSCommand 事件接收

Flash 嵌入效果

嵌入流程

  1. 確認系統已安裝 Flash Player(含 ActiveX 控制項)
  2. MFC 對話框專案 → 專案 → 加入元件 → Registered ActiveX Controls → Shockwave Flash Object → 插入 → 產生包裝類別
  3. 對話框編輯器工具箱出現圖示 → 拉入對話框 → 關聯變數 m_FlashPlayer
  4. 初始化播放:m_FlashPlayer.LoadMovie(0, _T("C:\\demo.swf")); m_FlashPlayer.Play();

Flash → VC++ 訊息傳遞

Flash ActionScript

// 按鈕按下
fscommand("btn", "enter");
// 退出按鈕
fscommand("quit", "");

VC++ 事件處理

void CMyDlg::OnFSCommandShockwaveflash1(LPCTSTR cmd, LPCTSTR args) {
    if (strcmp(cmd, "btn") == 0 && strcmp(args, "enter") == 0)
        MessageBox("歡迎進入系統!");
    else if (strcmp(cmd, "quit") == 0)
        { MessageBox("您選擇了退出!"); OnCancel(); }
}

VC++ ↔ Flash 變數存取

  • CString val = m_FlashPlayer.GetVariable("varName"); 讀取 Flash 變數
  • m_FlashPlayer.SetVariable("varName", "newValue"); 設定 Flash 變數

常用播放控制函式

  • GotoFrame(long frameNum) 跳至指定幀
  • StopPlay() / Play() 暫停/播放
  • SetZoom(zoom) 縮放
  • Pan(x, y, mode) 平移

開發提示

  • Flash 5 以下用 swflash.ocx,5 以上用 flash.ocx
  • LoadMovie 路徑必須為絕對路徑
  • 複雜互動建議定義 JSON 格式字串在 FSCommand 中傳遞
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved