C++与Flash的交互
研究Flash嵌入游戏中的可行性.......
- 渲染问题已解决
- 事件响应已解决
- 下面是C++与Flash AS的交互, 以MFC为例:
1. 新建一个MFC Dialog程序
2. 添加一个Flash控件
3. 把Flash控件添加一个变量
4. 在OnInitDialog()中添加载.swf文件
- // CCppFlashDlg 消息处理程序
- BOOL CCppFlashDlg::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
- // 执行此操作
- SetIcon(m_hIcon, TRUE); // 设置大图标
- SetIcon(m_hIcon, FALSE); // 设置小图标
- // TODO: 在此添加额外的初始化代码
- this->flashUI.LoadMovie(0, "C://Documents and Settings//Administrator//My Documents//My Flash//HelloWorld.swf");
- return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
- }
5. 制作一个flash, 放一个Button上去, 导出一下就可以在MFC中看到了
6. flash调用C++.
这个很简单, 在flash的那个Button组件的动作中添加脚本:
- on(click)
- {
- fscommand("MsgBox", "这是flash调用c++的响应");
- }
然后在MFC中添加事件响应:
- void CCppFlashDlg::FSCommandShockwaveflash1(LPCTSTR command, LPCTSTR args)
- {
- // TODO: Add your message handler code here
- if (0 == strcmp("MsgBox", command))
- {
- MessageBox(args);
- }
- }
7. C++调用Flash.
首先在Flash中注册回调函数:
- import mx.controls.Alert;
- import flash.external.*;
- ExternalInterface.addCallback("MsgBox", this, MsgBox);
- function MsgBox(msg:String)
- {
- Alert.show(msg, "",Alert.OK);
- }
然后在C++中添加调用:
- void CCppFlashDlg::OnOK()
- {
- // TODO: Add your specialized code here and/or call the base class
- this->flashUI.CallFunction("/
- <invoke name=/"MsgBox/">/
- <arguments>/
- <string>这是C++调用flash的响应</string>/
- </arguments>/
- </invoke>");
- }
另外, 还可以通过GetVariable()和SetVariable()来设置flash中定义的变量
8. 导出一下flash, 编译一下C++, 就可以看到效果了:
C++与Flash的交互的更多相关文章
- flash数据交互
新随笔 联系 订阅 管理 随笔 - 14 文章 - 5 评论 - 0 安卓中webview读取html,同时嵌入Flex的SWF,交互 安卓activity与html交互很简单,用javascri ...
- mfc对话框嵌入Flash的交互(转)
原文转自 http://blog.csdn.net/yacper/article/details/5021081 研究Flash嵌入游戏中的可行性....... 渲染问题已解决 事件响应已解决 下面是 ...
- 转 Flash与PS交互动画
FLASH是可以点击体验的,不是图片哦. UI中国不能上传flash,但是站酷可以,UI中国的就下载载附件看看吧 本人学生党兼网页设计师菜鸟一名,因为无聊练习做了个FLASH的交互 所以很多学弟学妹们 ...
- Js与flash交互:在html页面中用js与MyReport插件交互
Html页面与flash的加载 如下图,flash是html页面的一个插件节点. js与flash进行交互,首先要处理好html页面和swf的加载问题. Swf调用外部js方法,要确保js方法已存在, ...
- (转)由Uploadify插件想到的Flash无法传递Session和Cookie的问题解决
在ASP.NET MVC3中使用Uploadify上传文件时发现,在后台需要验证登录状态的时候,Uploadify根本无法完成验证,因此,在后台只能使用非验证状态进行文件上传 —— 众所周知,这无异于 ...
- div层遮盖flash(兼容浏览器)
今天测试div层和flash的交互,发现div层总是被flash层遮盖,在百度上找了一会,说是加个<param name="wmode" value="transp ...
- winform 通过 html 与swf 交互 简单案例
在上一篇 winform 与 html 交互 简单案例 中讲了winform与html之间的简单交互,接下来的内容是在winform中以html为中转站,实现将swf嵌入winform中并实现交互. ...
- [转]Flash、Flex、AS3.0框架及类库资源收集之十全大补
原文地址:http://www.d5power.com/portal.php?mod=view&aid=27 APIs.Libs.Components1.as3ebaylibhttp://co ...
- FMS4.5( Adobe Flash Media Server4.5)流媒体服务器搭建
下载FMS4.5 下载地址:http://pan.baidu.com/s/1pJLi5Ur(已更新) FMS是用于用户之间相互通讯的新平台.它集成了Flash多媒体交互的特性,又添加了实时音频和实时数 ...
随机推荐
- squid 代理服务
squid代理服务分为两种方式: 一.正向代理(用在企业的办公环境中,员工上网需要通过Squid代理来上网) 客户端发送请求到代理服务器,代理服务器去向真正的服务器请求结果,并将结果返回给客户端 二. ...
- 2.Python3标准库--文本
(一)string:文本常量和模板 1.函数 import string ''' string模块在最早的Python版本中就已经有了.以前这个模块中提供的很多函数已经移植到str对象中,不过这个模块 ...
- redis的安装和php的redis扩展
一.redis的安装和配置 1.官方现在源码 https://redis.io/download 2.解压源码 tar zxvf redis-3.2.11.tar.gz 3.编译 make 编译 ...
- git+jenkins在windows机器上新建一个slave节点【转载】
转至博客:上海-悠悠 前言 我们在跑自动化项目的时候,希望有单独的测试机能跑自动化项目,并且能集成到jenkins上构建任务.如果公司已经有jenkins环境了,那无需重新搭建. 只需在现有的平台基础 ...
- sql server 2008 R2连接失败 错误:18456
这种问题的解决方法: 第一步:以windows验证模式进入数据库管理器. 第二步:在对新资源管理器中右击实例名称选择属性,弹出服务器属性对话框,我们在左侧栏选择[安全性]选项卡,选中”SQL Serv ...
- Storm实战常见的问题
该文档为实实在在的原创文档,转载请注明: http://blog.sina.com.cn/s/blog_8c243ea30101k0k1.html 类型 详细 备注 该文档是群里几个朋友在storm实 ...
- nginx: [emerg] unexpected “}”
https://blog.csdn.net/gxdvip/article/details/46345129
- vue2.0--组件通信(非vuex法)
写在前面: 1.父组件的data写法与子组件的data写法不同 //父组件 data:{ //对象形式 } //子组件 data:function(){ return { //函数形式 } } 2.引 ...
- 在LoadRunner中转换字符串大小写的C语言函数
在LoadRunner中转换字符串大小写的C语言函数 . loadrunner语言ccharacterstringaction 封装ConvertToXXX函数: //ConvertToUpper f ...
- 【ASP.NET】必须知道的ASP.NET核心处理
该找工作了,回头复习一下基础知识,增加一下理论知识的理解,下面我们看一下今天要说的. ASP.NET应用程序对象 一.请求的处理参数:上下文对象HttpContext 当一个请求到达ASP.NET服务 ...