| 11.3 | 视频处理技术
AVI是现今比较流行的影音文件,很多视频传输程序的录像都是AVI文件。而Flash动画在网络上更是随处可见,本节就介绍一下这两种文件的播放。
11.3.1 播放Avi文件
通过CAnimation控件即可播放没有声音的AVI文件,而CAnimation控件不是Microsoft Visual C++(www.cppentry.com)常规控件,在使用CAnimation控件前首先应将其添加到工程中,其添加方法如下。
(1)单击菜单栏中的“Project”/“Add to Project”/“Components and Controls”命令。打开Components and Controls Gallery窗口,如图11.8所示。

图11.8 Components and Controls Gallery窗口
(2)在该窗口中通过双击打开Registered ActiveX Controls文件夹。
(3)在该窗口中的列表框中选择Microsoft Animation Controls(sp4)文件,如图11.9所示。

图11.9 选择Microsoft Animation Controls(sp4)文件
(4)单击Insert按钮,打开Confirm Classes窗口,如图11.10所示。
(5)通过Confirm Classes 窗口可以向程序中添加控件所对应的类文件,CAnimation控件对应着CAnimation类。
(6)单击OK按钮,Microsoft Visual C++(www.cppentry.com)会把CAnimation控件、CAnimation类所对应的头文件animation.h和实现文件animation.cpp一同添加到工程中。
(7)CAnimation控件被添加到工程中的控件面板中,如图11.11所示。

图11.10 Confirm Classes 对话框

图11.11 添加CAnimation控件的效果
CAnimation的主要成员函数如表11.16所示。
表11.16 CAnimation的主要成员函数
成 员 函 数 描 述
SetAutoPlay 设置为打开文件后自动播放
GetAutoPlay 获得自动播放的设置
SetBackStyle 设置控件背景颜色是否为透明,只能在非运行下设置
续表
成 员 函 数 描 述
GetBackStyle 获得控件背景颜色的设置
SetCenter 设置文件在控件居中播放
GetCenter 获得居中设置
SetEnabled 设置控件是否可用
GetEnabled 获得是否可用设置
GetHWnd 获得控件的窗体句柄
SetBackColor 设置控件背景颜色
GetBackColor 获得控件背景颜色
GetOLEDropMode 获得控件是否支持拖曳
SetOLEDropMode 设置控件的拖曳模式
Close 关闭控件窗体
Open 打开文件
Play 播放文件
Stop 停止播放
OLEDrag 拖曳操作
下面通过实例介绍如何用CAnimation控件播放AVI文件。
例如:
ch1107实例位置:mr\11\sl\07
使用CAnimation控件播放AVI文件的程序设计步骤如下。
(1)创建一个基于对话框的应用程序。
(2)在对话框中添加一个CAnimation控件和两个按钮控件。
(3)处理“打开”按钮的单击事件,打开AVI文件并播放。代码如下:
CString strname; CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,"AVI文件|*.avi||"); if(dlg.DoModal()==IDOK){ strname=dlg.GetPathName(); } if(strname!="") { COleVariant var1((short)0); COleVariant var2((short)-1); m_animation.Open(strname); m_animation.Play(var2,var1,var2); }
|
说明:
CAnimation类的Play函数需要调用VARIANT变量作为参数,程序中的var1和var2都是VARIANT变量,是通过COleVariant对象生成的。
(4)程序运行效果如图11.12所示。

【责任编辑:
阚书 TEL:(010)68476606】