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
七星重剑 阅读(6743)
评论(4) 编辑 收藏 引用 所属分类:
Flash Scaleform GFx