### 函数功能

该函数创建一个带有特定宽度、高度和颜色格式的位图。

### 函数原型

HBITMAP CreateBitmap(int nWidth,int nHeight, UINT cPlanes, UINT cBitsPeral,CONST VOID *lpvBits)；

### 参数

nWiath：指定位图宽度、单位为像素。
NHeight：指定位图高度、单位为像素。
CPlanes：指定该设备使用的颜色位面数目。
CBitsPerPel：指定用来区分单个像素点颜色的位数（比特数目）。
LpvBits：指向颜色数据数组指针。这些颜色数据用来设置矩形区域内像素的颜色。矩形区域中的每一扫描线必须是双字节的整数倍（不足部分以0填充）。如果该参数为NULL，那么就表示没有定义新位图。

### 返回值

如果函数成功，那么返回值是位图的句柄；如果失败，那么返回值为NULL。若想获取更多错误信息，请调用GetLastError函数。
备注：在创建完位图之后，可以通过使用SeletObject函数把它选入到设备环境中。尽管函数CreateBitmap可以用来创建彩色位图，但由于性能方面的原因，应用程序使用CreateBitmap函数来创建单位色位图，创建彩色位图应该使用函数CreateCompatibleBitmap。当由CreateBitmap创建而返回的彩色位图被选入到设备环境时，系统必须确保选入进去的设备环境格式与位图匹配。由于函数CreateComapatbleBitmap获取设备环境，所以它返回的位图与指定的设备环境有相同的格式。由于这个原因，对SelectObject的后续调用都要比从CreateBitmap函数创建返回的彩色位图调用快。
如果位图是单色的，那么对于目标设备环境而言，0表示前景颜色，而1表示背景颜色。
如果应用程序将nWidth或nHeight参数设为0，那么函数CreateBitmap返回的是只有一个含像素的单色位图的句柄。当不再需要位图时，可调用DeleteObject函数删除它。
Windows CE：参数cPlanes必须是1。

### 速查

Windows NT：3.1及以上版本；Windows：95及以上版本；Windows CE：1.0及以上版本；头文件：wingdi.h；库文件：gdi32.lib。