//创建一个位图
        WORD HatchBits[8] = {0x11,0x22,0x44,0x88,0x11,0x22,0x44,0x88};
CBitmap bm;
bm.CreateBitmap(8,8,1,1,HatchBits);
msdn的解释是这样的:
参数: 
nWidth     指定位图的宽度(以像素数为单位)。  
nHeight    指定位图的高度(以像素数为单位)。  
nPlanes    指定位图中的彩色位面数。  
nBitCount  指定位图中每个像素颜色的位数。  
lpBits     指向一个短整型数组,数组中记录了位图的初始位值。如果为NULL,则新的位图没有被初始化。  好抽象,我还没弄懂,有能清楚地介绍一下的吗?

解决方案 »

  1.   

    前面4个参数弄懂了,后面那个参数const void* lpBits —— 那个数组是怎么回事?
      

  2.   

    我还是没明白,数组
    WORD   HatchBits[8]   =   {0x11,0x22,0x44,0x88,0x11,0x22,0x44,0x88}; 
    代表的像素颜色是什么?
      

  3.   

    要根据你的位图格式而定。比如你这个例子,创建的是单色位图,那么数组中的每一个位(bit)代表一个像素,一般0代表黑色,1代表白色,当然也要看你显示的时候用什么样的调色板。