怎样使用资源文件

C++Builder资源文件的制作及调用

http://lkm771028.i.sohu.com/blog/view/155813290.htm

建立一个文本文件,名字叫mybmp.rc,加入工程里   
其内容如下:   
BMP1         BITMAP         "F:\123.bmp"   
注意这里的"F:\123.bmp"必须存在   
2         在程序里这样使用:   
void         __fastcall         TForm1::FormPaint(TObject         *Sender)   
{   
Graphics::TBitmap         *aaa         =         new         Graphics::TBitmap();   

             //aaa->LoadFromResourceName((unsigned         int)(HInstance),"BMP1");//这样也可以的哦!   
aaa->Handle         =         LoadBitmap(HInstance,"BMP1");//这是你需要用的函数   
Form1->Canvas->Draw(0,0,aaa);   
delete         aaa;   
}

.rc 是资源说明文件,它是文本格式,所以可以新建一个 txt 文件,然后将文件后缀改为.rc 即可。对它的编辑也可以用记事本编辑,当然在 C++Builder 中也可以编辑。 .rc 文件的格式很简单,每一行说明一个资源,一行中有三列,第一列为资源的标志名, 第二列为资源的类型,第三列为资源的文件名

怎样使用资源文件

http://c.chinaitlab.com/cc/basic/200806/754573.html

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

    第一步:建立一个rc文件.
    例如:zpg.rc,内容如下:
    DemHint     WAVE     D:\Zpg2000\Res\DemHint.wav
    PrintType    B99vMAP     D:\Zpg2000\Res\PrintType.bmp
    ArrowDown    B99vMAP     D:\Zpg2000\Res\ArrowDown.bmp
    ArrowUp    B99vMAP     D:\Zpg2000\Res\ArrowUp.bmp
    ZoomIn    CURSOR  D:\Zpg2000\Res\ZoomIn.cur
    ZoomOut    CURSOR  D:\Zpg2000\Res\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();    //确保光标立即改变
    注意:
    资源文件只在设计期有用,程序编译后,这些资源就被编译到可执行文件中了,所以程序分发时不必带上资源文件。

 

你可能感兴趣的:(怎样使用资源文件)