Visual C++ 资源文件符号
Visual c++ resource files symbols
我对 Visual Studio (2013) 资源文件有点困惑。我在我的项目中添加了一个新位图,它有自己的符号 IDB_BITMAP1,但我不确定如何在 MAKEINTRESOURCE 宏中使用它。我必须使用它的编号 id,101。我用记事本打开了 resource.h 文件,但没有 #define 指令。我是否必须为我的资源文件手动添加常量,或者 VS 会自动为我添加常量而我只是错过了什么?
这是一种典型的做法:
头文件:
// 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);
当不再使用位图时。
实际上我现在意识到,添加文件不会修改 resource.h 文件。我必须包含它,在 MAKEINTRESOURCE 中使用文件的 ID,然后点击编译按钮,然后它就可以工作了。
我对 Visual Studio (2013) 资源文件有点困惑。我在我的项目中添加了一个新位图,它有自己的符号 IDB_BITMAP1,但我不确定如何在 MAKEINTRESOURCE 宏中使用它。我必须使用它的编号 id,101。我用记事本打开了 resource.h 文件,但没有 #define 指令。我是否必须为我的资源文件手动添加常量,或者 VS 会自动为我添加常量而我只是错过了什么?
这是一种典型的做法:
头文件:
// 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);
当不再使用位图时。
实际上我现在意识到,添加文件不会修改 resource.h 文件。我必须包含它,在 MAKEINTRESOURCE 中使用文件的 ID,然后点击编译按钮,然后它就可以工作了。