发信人: hunter__fox(雁回西楼)
整理人: hunter__fox(2003-08-01 21:03:08), 站内信件
|
CreateBitmap
函数功能:该函数创建一个带有特定宽度、高度和颜色格式的位图。
函数原型:HBITMAP CreateBitmap(int nWidth, int nHeight, UINT cPlanes, UINT cBitsPerPel, CONST VOID *lpvBits);
参数:
nWidth:指定位图宽度,单位为像素。
nHeight:指定位图高度,单位为像素。
cPlanes:指定该设备使用的颜色位面数目。
cBitsPerPel:指定用来区分单个像素点颜色的位数(比特数目)。
lpvBits:指向颜色数据数组指针。这些颜色数据用来置矩形区域内像素的颜色。矩形区域中的每一扫描线必须是双字节整数倍(不足部分以0填充)。如果该参数为NULL,那么就表示没有定义新位图。
返回值:如果函数成功,那么返回值是位图句柄;如果失败,那么返回值为NULL。若想获取更多错误信息,请用GetLastError函数。
备注:在创建完位图后,可以通过使用SelectObject函数把它选入到设备环境中。尽管函数CreateBitmap可以用来创建彩色位图,位由于性能方面的原因,应用程序使用CreateBitmap函数来创建单色位图,创建彩色位图应该使用函数CreateCompatibleBitmap。当由CreateBitmap创建而返回的彩色位图被选入到设备环境时,系统必须确保选入进去的设备环境格式与位图匹配。由于函数CreateComapatibleBitmap获取设备环境,所以它返回的位图与指定的设备环境有相同的格式。由于这个原因,对Select的后续调用都要比从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。
---- 作者:hunter__fox【雁回西楼】
来源:网易虚拟社区广州站 VFP版
|
|