Visual c + +资源文件符号

时间:2015-03-26 22:47:24

标签: c++ visual-studio resources

我对Visual Studio(2013)资源文件有点困惑。我在我的项目中添加了一个新的位图,它有自己的符号IDB_BITMAP1,虽然我不确定如何在MAKEINTRESOURCE宏中使用它。我必须使用它的数字ID,101。我用记事本打开resource.h文件,没有#define指令。我是否必须手动为我的资源文件添加常量,或者VS是否为我自动执行此操作而我只是错过了什么?

2 个答案:

答案 0 :(得分:1)

这是一种典型的做法:

标题文件:

// resources.h
#ifndef _RESOURCES_H
#define _RESOURCES_H

#define IDB_BITMAP1 101

#endif

资源文件:

// resources.o
IDB_BITMAP1 BITMAP DISCARDABLE ".\myPic.bmp"

源代码:

// other_file.cpp
#include "resources.h"
HBITMAP hBitmap = (HBITMAP) LoadImage(
    hInstance,
    MAKEINTRESOURCE(IDB_BITMAP1),
    IMAGE_BITMAP,
    0,
    0,
    LR_LOADFROMFILE);

不要忘记通过

释放内存
DeleteObject(hBitmap);

不再使用位图时。

答案 1 :(得分:1)

实际上我现在意识到,添加文件不会修改resource.h文件。我必须包含它,在MAKEINTRESOURCE中使用文件的id,然后点击编译按钮,然后它就可以了。