网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
谈Delphi编程中资源文件的应用
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式

 (一)初级应用篇:  
  资源文件一般为扩展名为res的文件.在VC中资源文件用得非常普遍,但Delphi在其联机帮助中对资源文件没作什么介绍,其实利用其自带的资源编译工具BRCC32.EXE(一般位于\Delphi\BIN目录下),我们完全可以做出跟VC一样效果的文件来。  
  资源文件最大的好处是能将一些在必要时才调用的文件跟可执行文件一起编译,生成一个文件.这样做最大的好处就是使外部文件免遭破坏.例如在一条程序中你要临时调用一幅图片,一般作法是把图片放在某一路径下(通常是主程序所在路径),但如果用户路径误删你的图片文件,则可能使程序找不到相应文件而出错崩溃.另外,如果你想自己的程序界面美观,想用一些自定义光标,也要用到资源文件。  
  资源文件的使用步骤为:  
1.编写rc脚本文本  
用记事本或其它文本编辑器编写一个扩展名为rc的文件。例如:  

mycur cursor move.cur //加入光标  
mypic Bitmap Water.BMP //加入位图  
mywav WAVE happy.wav //加入声音  
myAVI AVI EPOEN.AVI //加入视频  
myIco ICON CJT.ICO //加入图标  

  格式分别为在资源文件中的名称->类型->实际文件名称,例如上面第一行定义一个名为mycur的光标,实际名称为加入光标move.cur.  
2.将rc文件编译成res资源文件  
  将脚本文件和实际文件拷到Brcc32.EXE所在目录,执行DOS命令。格式为:Brcc32 脚本文件(回车),例如有一名为myfirst.rc的脚本文件,则执行 Brcc32 myfirst.rc(回车)即可。如果你是懒人,也可新建一批处理文件,内容只有一行:Brcc32 mufist.rc.(因为Delphi安装后一般会在自动批处理文件中指明搜索路径的。)如果编译成功,则会生成一个结尾为res的文件,这个文件就是我们需要的资源文件。  
3.在Delphi单元中加入资源文件  
  将生成的res资源文件拷贝到你所编程序的路径下,在单元文件{$R *DFM}后加上一句{$R mufirst.res},则将res文件加入去,编译后资 源文件即已包含在可执行文件中了。若你有多个资源文件,也按上法依次加入。  
4.在Delphi程序中调用资源文件  
  资源文件在Delphi中的关键字为hinstance.下面给出具体用法.  
<1>光标的调用  
  首先在程序中定义一个值大于0的常量,因为Delphi本身用0-负16来索引默认的光标,所以我们制定的光标应从表面上1开始索引。然后在窗口的Oncreat事件中添加以下代码:  
screen.cursor[35]:=Loadcursor (hinstance,''mycur'');  
  其中35为大于1的常量,mycur为光标在资源文件中的名字。如果希望在其他控件上使用定制光标,例如Panel控件,只需在程序的适当处加入以下代码:  
Panel1.cursor:=35;  
<2>位图的调用  
  新建一项工程,添加一Timage控件,在需要显示的地方写以下代码:  
Var mymap:Hbitmap;  
begin  
mymap:=LoadBitmap(hinstance,''mypic'');  
Image1.picture.Bitmap.Handle:=mymap;  
end;  
  其中"mypic"为位图资源文件中的名称。  
〈3〉AVI文件的调用  
新建一工程,添加一Animate控件,在需要的地方加入:  
animater1.resname:=''myAVI'';  
animater1.Active:=true;  
其中myAVI为视频文件在资源文件中的名称。  
〈4〉调用WAV文

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号