用图片透明效果时TransparentBlt的问题
我的代码可以使背景为白色的图片变透明,但是好奇怪的是,我想那图片在(0,0)坐标以外显示时,图片就会消失掉了,高手们可告诉小弟怎么一回事么?
代码如下:
CDC m_cdc;
CBitmap m_bitmap;
CDC *pwnd = GetDC();
m_cdc.CreateCompatibleDC(pwnd);
CDC m_cdc2;
CBitmap m_bitmap2;
m_cdc2.CreateCompatibleDC(pwnd);
m_bitmap2.LoadBitmap(IDB_TRUE1);
CBitmap *oldbitmap2 = m_cdc2.SelectObject(&m_bitmap2);
TransparentBlt(pwnd->m_hDC,0,0,150,150,m_cdc2,0,0,150,150,RGB(255,255,255));
//TransparentBlt(pwnd->m_hDC,50,50,150,150,m_cdc2,50,50,150,150,RGB(255,255,255));//用这个图片会就不见了。
m_cdc2.SelectObject(oldbitmap2);