一、准备工作
第一步:下载并安装Adobe Flash Player。
从官方网站(http://get.adobe.com/cn/flashplayer/)上下载最新的Flash Player(大约为2.66M),并安装。对于Windows 32位系统,其默认安装目录为:C:/WINDOWS/system32/Macromed/Flash/;对于64位系统,为:C:/Windows/SysWOW64/Macromed/Flash。
第二步:通过regsvr32.exe注册flash控件 Flash10l.ocx。
从开始菜单中打开运行对话框,并输入:regsvr32 C:/Windows/SysWOW64/Macromed/Flash/Flash32_13_0_0_214.ocx注册该控件(注册之后就可以在项目中进行控件添加了),如果注册成功,有如下提示:
注销控件的命令行为 regsvr32 /u C:/Windows/SysWOW64/Macromed/Flash/Flash32_13_0_0_214.ocx。
二、新建MFC项目,添加Flash控件
第一步:建立基于对话框的MFC程序。
打开Visual Studio 2010,新建项目,选择“MFC应用程序”,并将其命名为Flash。
在接下来的选型设置中,选择应用程序类型为“基于对话框”,其他可按默认设置。
第二步:添加Shockwave Flash Object类。
添加ActiveX对应的类,“项目”→“类向导”→“ActiveX控件中的MFC类”,打开“从ActiveX控件添加类向导”对话框。选择从“文件”添加类,找到Flash控件的安装位置,即可添加Shockwave Flash控件,接口选择“IShockwaveFlash”,以生成CShockwaveFlash类(类的名称可以修改)。
第三步:添加Shockwave Flash Object控件。
在资源视图里找到“Dialog”,并选择其中的IDD_FLASH_DIALOG,在其上点右键,选择“插入ActiveX控件”,会发现弹出的列表中没有“Shockwave Flash Object”。
此时,选择“工具-选择工具箱项”,在弹出的“选择工具箱项”中“COM组件”选择Shockwave Flash Object项,如图:
这时会发现Shockwave Flash Object出现在“插入ActiveX控件中”:
同时,在右侧的工具箱中有Shockwave Flash Object:
此时,添加Shockwave Flash Object控件。如下图所示:
在Flash控件上点右键,然后选择“添加变量”,设定“变量名”为:m_Player。
第四步:播放动画。
在FlashDlg::OnInitDialog()函数,在“return TRUE”之前添加代码:
CString str = _T("D://1.swf");
m_Player.LoadMovie (0, str);
m_FlashPlayer. Play ();
其中m_Player.LoadMovie(0, str)用来将动画导入程序中,str为要播放的flash路径,要用绝对路径。路径用双斜杠“//”隔开,如果直接复制文件所在路径,运行程序会报错,因为直接复制的路径中是单斜杠“\”;m_Player. Play ()开始播放动画。
现在运行程序,就可以看到flash嵌入到程序里面了。还有几个常用的函数可以用来控制动画的播放,如GotoFrame(long FrameNum)可以转到FrameNum侦播放(侦数从0开始),StopPlay()可以停止播放。