利用资源文件在dephi程序中播放AVI动画的方法
在设计自动升级程序时,为了更好的引入下载的动态效果,要在程序中播放AVI来实现。原来以为要下载一控件来实现,结果发现原来DEPHI有一个自带的控件可以实现,就是Tanimate控件了。它在Win32控件面板里面,这控件有一个属性filename,可以选择播放的AVI文件。这种方法制作的程序发布后,AVI文件必须在指定的目录下存在,否则运行后会出现“找不到文件的”提示。
下面介绍个把AVI文件资源编译进可执行文件的实现AVI文件播放的方法,同时也了解下资源文件的制作过程。
Windows应用程序使用的图标、图片、光标、声音等是一种资源(Resource)。资源是程序的一部分,程序要正常运行就离不了资源文件。在DEPHI可以管理以.res结尾的资源文件。在程序中加入相应的编译连接符,便可以把该资源编译进可执行文件中,用唯一的标识符来表示。程序中要使用时便可以通过此标识符来调用。
一、资源文件的生成。
1、创建一个.Rc的纯文本文件。格式如下:
资源标识符 关键字 资源文件名
格式说明:
① 资源标识符:程序中调用资源时的特定标号;
② 关键字:标识资源文件类型;例如:
Wave : 资源文件是声音文件;
RCDATA: JPEG文件;
AVI : AVI动画;
ICON : 图标文件;
BITMAP: 位图文件;
CURSOR: 光标文件;
RMI : RMI音乐文件;
MIDI : MIDI音乐文件
③ 资源文件名:加入的资源文件名(要带扩展名,可以带路径名构成全文件名);
例如:myavi.rc的文件内容为: myWav avi "g:/myavi/myavi.wav"
2、使用Borland资源编译器(BRCC32.EXE)转化.Rc文件成.Res文件。
Brcc32 myavi.rc (可以指定文件的路径)
执行完毕,会在相应的目录下生成文件myavi.res。至此,res文件便生成了。
二、在程序引用资源文件。
为了存取我们的资源文件,必须告诉Delphi链接我们的资源文件到应用程序中。因此要在源代码中加入一条编译指令完成上述功能。这条指令必须紧跟在窗口指令后,如下形式:
{$R *.DFM} //Delphi自带编译指令
{$R myavi.RES} //新加入的编译资源文件的指令
不要删除{$R *.DFM}指令,因为这行代码告诉Delphi链接下面的资源到窗口的资源中。
三、存取资源文件。
Animate1.ResName := 'MYAVI'; (这里的字符串便是资源标识符)
注意:在控件的可视属性里没用resname者属性的哦!
Animate1.Active := True; //让动画真正动起来了!