original address今天弄了一下VC++,嘗試使用flash,不錯,至少可以兩個家伙進行通信。
VC的做法:
1 添加一個控件 shockwave flash
2 添加fscommand指令接收
3 添加調用flash內部函數的方法
Flash的做法:
1 添加腳本顯示效果
2 添加fscommand測試
3 添加可以提供外部調用的函數
代碼如下,可以提供參考:
Flash代碼:
import flash.external.*;
ExternalInterface.addCallback("CallMeFromApplication", this, InternalFunction);
function InternalFunction(str:String):String {
a_txt.text = str;
return Array("test", "testsdf");
return "The function was called successfully";
}
//
var a_str:String = "test";
a_txt.text = gggg;
fscommand("ffff", "sdfsdf");
//FlashCall("test");
a_btn.onRelease = function() {
a_txt.text = gggg;
};
VC++代碼:
void CflashDlg::FSCommandShockwaveflash2(LPCTSTR command, LPCTSTR args)
{
// TODO: 在此處添加消息處理程序代碼
MessageBox(command);
flash_movie.SetVariable("gggg","test");
//((CShockwaveflash2*)GetDlgItem(IDC_SHOCKWAVEFLASH2))->SetVariable("gggg","test");
CString test;
test=flash_movie.CallFunction("<invoke name="CallMeFromApplication"><arguments><string>Some text for TFlashPlayerControl</string> </arguments></invoke>");
MessageBox(test);
}
大家試試啊~~
可以通信后那就啥事都可以做了。
還是逍遙劍客寫的這個比較好看,與MFC結合,手把手教,就算不會MFC也沒問題,看了對GFx的認識更上一層。
C++與Flash的交互
posted on 2008-10-22 01:04
七星重劍 閱讀(6762)
評論(4) 編輯 收藏 引用 所屬分類:
Flash Scaleform GFx