转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> Delphi程序 >> 正文
资源文件的应用         ★★★★

资源文件的应用

作者:闵涛 文章来源:闵涛的学习笔记 点击数:850 更新时间:2009/4/23 18:34:53

建立一个RC文件,本示例程序:SwfFile.rc
RC文件其实就是一个资源文件的描述文本。然后可以输入一些我们要定义的资源,示例:
Flash SwfFile1 Thanks.SWF
然后用BRCC32把这个RC文件编译成SwfFile.RES。
BRCC32 SwfFile.rc保存为Swf.bat批处理文件。
在Delphi的工程文件中使用 $R 编译指令让Delphi包括资源到EXE文件里面。
{$R SwfFile.RES}
此时我们可以在单一的执行文件中调用资源了。示例代码如下:
//资源文件流的应用
procedure FlashResToFile(const ResName, ResType, FileName: string);
var
  FlashRes: TResourceStream;
begin
  FlashRes := TResourceStream.Create(HInstance, ResName, PChar(ResType));
  try
    FlashRes.SaveToFile(FileName); //将资源保存为文件,即还原文件
  finally
    FlashRes.Free;
  end;
end;
//执行资源文件中的Flash播放文件
procedure TFlashResFrm.PlayResFileBtnClick(Sender: TObject);
begin
  if FileExists(ExtractFilePath(ParamStr(0)) + ''''Thanks.SWF'''') then
    DeleteFile(ExtractFilePath(ParamStr(0)) + ''''Thanks.SWF'''');
    FlashResToFile(''''FLASH'''', ''''SwfFile1'''', ''''Thanks.SWF'''');
    ShockwaveFlash1.Movie := ExtractFilePath(ParamStr(0)) + ''''Thanks.SWF'''';
    ShockwaveFlash1.Play;
end;

通常在Delphi的应用程序中会调用到很多的资源,例如图片,动画(AVI),声音,甚至于别的执行文件。
ResICO ICON "example.ico"              //加入图标
ResCursor Cursor "example.cur"         //加入光标
ResBitmap Bitmap "example.bmp"         //加入位图
ResAVI AVI "example.avi"               //加入视频
ResWav WAVE "example.wav"              //加入视频

{$R ResDefine.RES}

procedure TResourceForm.FormCreate(Sender: TObject);
begin
  Application.Icon.Handle := LoadIcon(hInstance,''''ResICO'''');
  Application.Title := ''''资源文件使用集合'''';
  ResourceForm.Caption := ''''资源文件使用集合--[Delphi编程驿站:http://yckxzjj.vip.sina.com]'''';
end;

procedure TResourceForm.Image1MouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
  //把MMSystem加入到Interface的uses单元中
  PlaySound(''''ResWav'''',HInstance,Snd_ASync or Snd_Memory or snd_Resource) ;
end;

procedure TResourceForm.AVIPlayBtnClick(Sender: TObject);
begin
  Animate1.ResName :=''''ResAVI'''' ; //资源标识
  Animate1.Active :=True ;
end;

procedure TResourceForm.BmpShowBtnClick(Sender: TObject);
begin
  //Image1.Picture.Bitmap.Handle :=LoadBitmap(hInstance,''''ResBitmap'''');
  Image1.Picture.Bitmap.LoadFromResourceName(hInstance,''''ResBitmap'''');
  Image1.Visible := True;
end;

procedure TResourceForm.CursorUpdateBtnClick(Sender: TObject);
begin
  Screen.Cursors[1] :=LoadCursor(hInstance,''''ResCursor'''');
  //Image1.Cursor := 1;
  ResourceForm.Cursor :=1;
end;


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台