En visual studio c++ tengo un cbitmap, lo cargo y lo dibujo, pero quiero que en algunas zonas sea transparente. El caso que usando un CImageList si se como hacer que las imagenas me salgan con las zonas que quiero transparentes, pero usando un CBitMap y un BitBlt (para doble buffer) no soy capaz.
// Select the bitmap into the DC
poldbmp = memdc.SelectObject( arrayFrames[frameActual].getImage() );
// Copy (BitBlt) bitmap from memory DC to screen DC
pDC->BitBlt( posX, posY, 1024, 768, &memdc, 0, 0,SRCCOPY );
con esto así, me sale sin transparencias.
Si lo hago así, si me sale con transparencias..pero no quiero hacerlo con CimageList:
m_ImageList.Create(121,121,ILC_COLOR32|ILC_MASK,0,0);
CBitmap bmp;
bmp.LoadBitmap(IDB_FRAME);
m_ImageList.Add(&bmp, RGB(255,0,255));
m_ImageList.DrawEx(memdc,0,m_p,SI,RGB(255,0,255),0,ILD_TRANSPARENT);
Si alguien puede ponerme un poco de codigo...