Crazy_Challenger

导航

 

Flash动画在许多领域中有着举足轻重的作用。如在网页中嵌入flash,可以得到一些意想不到的效果,学习MFC的我们就想,该如何给自己的程序添加Flash文件呢?

编程环境:VC++6.0 + windows7-64bit + 支持activeX控件

具体步骤:

打开VC++6.0,新建MFC工程,如下图

点击OK,选择基于对话框的,如下图

Finish->OK

右键对话框窗体,选择插入ActiveX控件。

选择Shockwave flash Object,点击OK

删除文本,调整适当的属性。

选中该Flash控件后将,右键属性,将ID设置为IDC_SHOCKWAVEFLASH。

再次右键该控件,选择类向导(ClassWizard),给此控件添加一个成员变量,命名为flashshow。

确定

默认点OK就好

名字设置好点OK,再点OK

效果如下:

后在flashdemoDlg.cpp这个文件中添加代码。

首先在对话框初始化函数体BOOL CflashdemoDlg::OnInitDialog()中添加一下代码( return TRUE;之前):

RECT rc;
this->GetClientRect(&rc);//获得客户区的坐标

//调整flash的位置
rc.left=rc.right/2-200;
rc.right=rc.right/2+200;
rc.top+=40;
rc.bottom=rc.bottom/2;
flashshow.MoveWindow( &rc, true );

TCHAR strCurDrt[500];
int nLen = ::GetCurrentDirectory(500,strCurDrt);
if( strCurDrt[nLen]!='\' )
{
strCurDrt[nLen++] = '\';
strCurDrt[nLen] = '\0';
}

CString strFileName = strCurDrt;
strFileName += "clock.swf";//clock.swf是flash文件的名字,该flash文件放在工程目录下。
flashshow.LoadMovie(0, strFileName);
flashshow.Play();

然后在void CflashdemoDlg::DoDataExchange(CDataExchange* pDX)中添加如下代码(可能自己生成):

//{{AFX_DATA_MAP(CPlayFlashDlg)
DDX_Control(pDX, IDC_SHOCKWAVEFLASH, flashshow);
//}}AFX_DATA_MAP
把swf格式的文件复制到工程目录,运行程序即可

具体的代码位置,请看我写好的程序做参考。Swf随便下载就好,名字做相应的修改。

http://download.csdn.net/detail/a191030148/7987121

直接运行Debug中的EXE,把clock.swf放到Debug文件夹下。
————————————————
原文链接:https://blog.csdn.net/a191030148/article/details/39644891

posted on 2019-08-29 16:03  Crazy_Challenger  阅读(161)  评论(0)    收藏  举报