您的位置:首页 > 编程语言 > Delphi

Delphi中资源的简单应用

2010-10-06 14:46 225 查看
Delphi中资源的简单应用。首先,我们先创建一个扩展名为:.RC的文本文件,然后在该我们文件中输入:

资源标识符 + 关键字 + 资源文件名

我们先来看一看这几个文字的具体含义:

1.资源标识符:程序代码调用该资源时用以识别的标志;

2.关键字:资源的文件类型;

3.资源文件名:你现在需要包含道程序里的文件,这个文件可以是.EXE, 也可以是.Dll,甚至可以是一个Flash文件。等等。

举个例子吧,比如我要封装一个Flash道程序里,我们可以这样写.RC文件

Flash SWFFile XYZ.Swf

现在我们需要把.RC文件以及XYZ.Swf这两个文件放在同一个文件夹里,然后去Delphi的目录里拷贝一个brcc32.exe过来,马上我们就要创建资源文件了,其实生成资源很简单,最懒惰的方法就是直接把那个扩展名为.rc的文件拖到brcc32.exe上就可以了,你也可以写一个批处理:brcc32 some.rc 其中some为你的rc文件名,然后运行BAT,这两种方法都可以在当前目录生成一个与.rc同名但扩展名为RES的资源文件。

资源的创建大概如此

举一个例子吧!

unit UtFlash;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, ShockwaveFlashObjects_TLB;

type
TForm1 = class(TForm)
ShockwaveFlash1: TShockwaveFlash;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}
{$R SwfFile.RES}

procedure FlashResToFile(const ResName, ResType, Filename : String);
var
SwfRes : TResourceStream;
begin
SwfRes := TResourceStream.Create(HInstance, ResName, PChar(ResType));
try
SwfRes.SaveToFile(FileName);
finally
SwfRes.Free;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
FlashResToFile('Flash', 'SWFFile', 'Pets.swf');
ShockwaveFlash1.Width := Form1.Width;
ShockwaveFlash1.Height := Form1.Height;
ShockwaveFlash1.Movie := ExtractFilePath(application.exename) + 'Pets.swf';
ShockwaveFlash1.Play;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if FileExists('Pets.swf') then DeleteFile('Pets.swf');
end;

end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: