正文

[ZT]怎样使用资源文件2009-02-12 11:34:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/otot/40841.html

分享到:

下面介绍如何将光标和声音作为资源编译到可执行文件中,及其使用方法。

第一步:建立一个rc文件.
例如:zpg.rc,内容如下:
DemHint  WAVE D:\zpg2000Res\DemHint.wav
PrintType BITMAP D:\zpg2000Res\PrintType.bmp
ArrowDown BITMAP D:\zpg2000Res\ArrowDown.bmp
ArrowUp  BITMAP D:\zpg2000Res\ArrowUp.bmp
ZoomIn  CURSOR D:\zpg2000Res\ZoomIn.cur
ZoomOut  CURSOR D:\zpg2000Res\ZoomOut.cur

其中第一列为资源名称,第二列为资源类型,第三列为文件名.

第二步:编译这个文件.
>BRCC32 zpg.rc
BRCC32.exe 在.../borland/C++ Builder6/bin/目录下,
编译后生成一个资源文件zpg.res

第三步:在程序中声明对资源的使用
在程序中要用到这些资源的单元的#pragma resource "*.dfm"语句后前面添上
#pragma resource "zpg.res"
有时还需添上#pragma package(smart_init)
或在工程主CPP文件中添上
USERES("Zpg.res");
最后怎样调用这个资源呢?看:

调用位图:
Graphics::TBitmap *pBitmap=new Graphics::TBitmap;
pBitmap->LoadFromResourceName((unsigned int)HInstance,"PrintType");

播放声音:
PlaySound("DemHint",HInstance,SND_RESOURCE);

改变光标:
Screen->Cursors[crZoomIn]=LoadCursor(HInstance,"ZoomIn");
//crZoomIn为自定义的光标常量,习惯上为>0的数,而系统定义的一般<0
PaintBox->Cursor=(TCursor)crZoomIn;
Application->ProcessMessages(); //确保光标立即改变
注意:
资源文件只在设计期有用,程序编译后,这些资源就被编译到可执行文件中了,所以程序分发时不必带上资源文件。 
转自:http://www.cnblogs.com/nemolog/archive/2005/10/28/263655.html

阅读(1781) | 评论(1)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册