VC++下的FLASH插件使用

VC++下的FLASH插件使用  

我用屏幕录制软件做了一个4M大小的exe视频(因为生成wav文件太模糊了),简单介绍一下VC++6.0下引用FLASH插件的用法。有想看看的请发[email protected]索取。

 

(1)准备工作
要准备好FLASH CS3、flashplayer_10,前者是制作FLASH,后者是播放FLASH。
要准备好VC++6.0,制作控制FLASH的软件。方便以后做成游艺机模拟机。
(2)VC++添加FLASH控件
VC++建立一个基于对话框的应用程序TEST0407(图001、图002)
图001

VC++下的FLASH插件使用_第1张图片

查看原图


图002

VC++下的FLASH插件使用_第2张图片

查看原图


剪切不要东西、加FLASH控件如下操作(图003)
图003

查看原图


[工具(T)]--[ActiveX Control Test Container]--[弹出对话框]
[File]--[Register Controls]--[弹出对话框]
找到C:WINDOWS\system32\Macromed\lash\Flash10e.ocx,[打开](图004)
添加后逐级关闭
图004

VC++下的FLASH插件使用_第3张图片

查看原图


(3)添加控件和类
视图资源里主框点击右键选[插入ActiveX控件](图005)
图005

VC++下的FLASH插件使用_第4张图片

查看原图


找到"Shockwave Flash Object"选择[确定](图006)生成黑屏幕(图007)
图006

查看原图


图007

查看原图


改属性,名字由原来"确定"、"取消"改为"播放"、"退出"并双击按钮,生成如下函数(图008)
图008

VC++下的FLASH插件使用_第5张图片

查看原图


然后在播放器黑框里单击右键弹出框选择[建立类向导](图009)
图009

VC++下的FLASH插件使用_第6张图片

查看原图


弹出"MFC ClassWizard"框里为FLASH的ID添加映射:选择IDC_SHOCKWAVEFLASH1、FSCommand、[Add Function],弹出"Add Member Function"选[OK](图010)
图010

VC++下的FLASH插件使用_第7张图片

查看原图


在"MFC ClassWizard"框里第2页"Member Variables",为FLASH的ID添加类,弹出提示对话框选择[确定],我们定义类名字,为m_flash,基类为CShockwaveFlash(图011)
图011

VC++下的FLASH插件使用_第8张图片

查看原图


最后[确定]退出类向导,发现类资源中多了一个CShockwaveFlash类
(4)修改"播放按钮"代码
为视图资源里的"播放"按钮消息响应函数修改代码(图012)
void CTest0407Dlg::OnOK()   //对应"播放"按钮
{
 // TODO: Add extra validation here
 
 //CDialog::OnOK();
 m_flash.LoadMovie(0,"c:\\VC\\tu\\12.swf"); //播放FLASH文件,路径C:\VC\tu\12.swf
 m_flash.Play();
}
图012

VC++下的FLASH插件使用_第9张图片

查看原图


(5)修改"退出按钮"代码
视图资源卡,在"Dialog"单击右键选择[插入Dialog],出现新的对话框、新的ID(IDD_DIALOG1)(图013)
图013

VC++下的FLASH插件使用_第10张图片

查看原图


右键单击整体"提示"框选择[建立类向导],提示对话框"Adding a Class"选择[OK],建立新类(图014)
图014

查看原图


"Name"框用户自定义为"CQuit",软件会自动建立一个"Quit.cpp"文件,选择[OK]。(图015)
图015

查看原图


在类向导卡里也可以再定义"确定"、"取消"两按钮的类名字为"m_QuitYes"、"m_QuitNo",选择[确定]。(图016)
图016

查看原图


发现类资源中多了一个CQuit类。该类名上单击右键,跳转到库(头文件),查到该库名为"Quit.h",并在公有里添加一个传递变量char QuitState。(图017)
图017

VC++下的FLASH插件使用_第11张图片

查看原图


视图资源里点击"提示对话框"的"确定"、"取消"按钮,生成两个函数,修改(图018)
void CQuit::OnOK()  //"提示"退出FLASH吗,确定
{
 // TODO: Add extra validation here
 CDialog::OnOK();
 QuitState=1;  //传递"确定退出"信息
}
void CQuit::OnCancel() //"提示"退出FLASH吗,取消,返回主菜单播放
{
 // TODO: Add extra cleanup here
 
 CDialog::OnCancel();
 QuitState=2;  //传递"返回主菜单"信息
}
图018

查看原图


在"test0407Dlg.cpp"里添加"Quit.h"库
#include "Quit.h"
在"退出"按钮函数void CTest0407Dlg::OnCancel()里修改如下(图019)
void CTest0407Dlg::OnCancel()  //对应"退出"按钮
{
 // TODO: Add extra cleanup here
 
 CQuit Quit;    //定义一个CQuit类
 Quit.DoModal();   //建立弹出对话框
 if(Quit.QuitState==1) //如果是"确定退出"信息
 {
  CDialog::OnCancel(); //退出
 }
 else if(Quit.QuitState==2) //如果是"返回主菜单"信息
 {
  m_flash.StopPlay();  //返回并暂停播放
 }
}
图019

查看原图


(6)编译通过,播放(图020)
图020

VC++下的FLASH插件使用_第12张图片

查看原图

你可能感兴趣的:(C++,Flash)