SetDIBColorTable()函数

函数功能:该函数用来对目前进入指定设备环境的设备无关位图(DIB)颜色表中的项设置RGB(红、绿、蓝)颜色值。

参数:

hdc:指定设备环境。一个与设备无关位图必须被选入到该设备环境中。

uStartindex:一个从零开始的颜色表索引,该索引指定了要设置的第1个颜色表项。

cEntries:指定要设置的颜色表项的数目。

pColors:指向RGBQUAD结构数组的指针。该结构包含了用于DIB颜色表的新颜色信息。

返回值:如果函数执行成功,那么返回值就是该函数设置的颜色表项的数目;如果函数执行失败,那么返回值为0。Windows NT:若想获得更多错误信息,请调用GetLastError函数。

备注:使用该函数是用来对那些使用1、4、或8位/像素格式的DIB位图的颜色表进行设置的。位图信息头结构中的成员BitCount表示了位图中每像素占多少位这种信息。

注意:位图信息头结构可以为:

Windows NT 3.51和以前版;BITMAPINFOHEADER,BITMAPINFOHEADER结构指定了每像素占多少位。BiBitCount值大于8的设备无关位图(DIB)没有颜色表。

Windows NT 4.0和Windows 95:BITMAPV4HEADER,对于Windows NT 4.0和Windows 95,与位图相关的BITMAPV4HEADER结构成员bV 4BitCount指定了每像素点占的位数。bV 4BitCount值大于8的DIB没有颜色表。

Windows NT 5.0和Windows 98:BITMAPV5HEADER,对于Windows NT 5.0和Windows 98,与位图相关的BITMAPV4HEADER结构中的成员bV 5BitCount指定了位图中每像素点占的位数。bV 5BitCount值大于8的DIB位图没有颜色表。

ICM:不进行颜色管理。

速查:Windows NT:3.5及以上版本;Windows:95及以上版本;Windows CE:不支持;头文件:wingdi.h:库文件:gdi32.lib。