CAnimateCtrl类提供了Windows通用动画控件的功能。此控件只对运行在Windows 95和Windows NT 3.51版及其更高版本下的程序有效。动画控件是显示AVI(视听交错)格式──标准Windows视/听格式片段的矩形窗口。一个AVI片段是一系列位图帧,就象电影。
动画控件只能运行简单的AVI片段。特别的,通过动画控件运行的片段必须符合下列要求:
1.必须确切地是一个视频流并且它必须至少有一个帧。
2.文件中至多有两个流(典型地,其它流,比如音频流,尽管动画控件忽略音频流)。
3.片段必须是非压缩的或用RLE8压缩的。
4.在视频流中不允许调色板改变。 可以将AVI片段作为一个AVI资源加入到自己的应用中去,或作为一个独立的AVI文件伴随应用。
CRect rect;GetClientRect(&rect);//获得动画控件显示的界面
CAnimateCtrl *m_animate;
m_animate = new CAnimateCtrl;//初始化动画控件
m_animate->Create(WS_VISIBLE,rect,this,0);//创建动画控件
//WS_CHILD子控件(不写也无影响)WS_VISIBLE(一定要写.否则显示不出来)
//ACS_CENTER创建的动画显示在中心位置ACS_TRANSPARENT自带的颜色被去掉.显示为默认颜色
//ACS_AUTOPLAY创建动画的时候自动播放
m_animate->Open(filename);//通过名字打开动画控件
m_animate->Play(0,-1,-1);//参数1.从哪开始0代表最前
//参数2.从哪结束-1代表最后参数3代表播放次数-1代表不确定(即一直重复)
m_animate->Stop();//暂停动画.仅仅是暂停操作
m_animate->Close();//关闭动画.并且关闭任意一个动画且从内存中移除!注:Close与Stop与区别.
delete m_animate;//Close关闭的是打开的.但new的内存并没有真正移除.一般情况下new与delete共用
//注:Close必须要与delete一起使用,仅Close不能关闭掉!