我在用vb的时候可以这样用:
Dim BitmapData() As Byte  '定义字节数组
Dim PicWidth As Long      '图形宽
Dim PicHeight As Long     '图形高
PicWidth=Picture1.Width/15   '从Picture1对象取得宽度
PicHeight=Picture1.Height/15   '从Picture1对象取得高度
'初始化字节数组大小
Redim BitmapData(1 To PicWidth*3*PicHeight+((PicWidth*3) Mod 4))
'取得位图数据
GetBitmapBits Picture1.Picture.Handle,Ubound(BitmapData),BitmapData(1)这样就可以取得位图的字节数据到BitmapData数组中。但是在vc里好像没有字节类型,只有char,而且还是指针的。因为我本来是搞vb的,
对vc不怎么懂,还请高手指点一二。

解决方案 »

  1.   

    http://www.codeproject.com/bitmap/using_get_set_bitmapbits.asp
      

  2.   

    既然你知道Picture1.Picture.Handle这个东西,那我就从这里说起在VC里面这个叫做HBITMAP,通过::GetBitmapBits(HBITMAP,LONG,LPVOID)函数可以完成你那段VB的功能LONG也就是长度,LPVOID是指针,比如图片大小为size,图片句柄为bmp,那么可以BYTE BitmapData=new BYTE[size];
    ::GetBitmapBits(bmp,size,(LPVOID)BitmapData);这样图片就到BitmapData数组里面了
      

  3.   

    BYTE* BitmapData=new BYTE[size];
    漏了“*”