是这样 我要画一个圆形的棋子到棋布上
这个棋子来源于一个方形的图片,但是这个图片因为是圆的
导致画到棋布上,4个圆角区域是白色的(因为一个圆无法覆盖一个正方型)
我想在画的时候让这4个圆角透明可以吗
请前辈给个思路啊
如果有代码的话就最好了

解决方案 »

  1.   

    hBitmap = LoadBitmap (hInstance_prg, MAKEINTRESOURCE (Qz[0][val].Image)) ; 
       GetObject (hBitmap, sizeof (BITMAP), &bitmap) ;
       if (hBitmap==0)
       {
     MessageBox(NULL,"hBitMap Error","gg",0);
     SendMessage(hwnd,WM_CLOSE,0,0);
       }
    hMemDC = CreateCompatibleDC (hdc) ;//复制一个设备句柄
    SelectObject (hMemDC, hBitmap) ;//把位图句柄放到这个设备内容句柄,*就作为这个位图的句柄了*
                TransparentBlt(hMemDC,0,0,38,38,hMemDC,0,0,38,38,RGB(255,255,255));
    BitBlt(hdc,Qz[0][val].Xgrid-19,Qz[0][val].Ygrid-19,38,38,hMemDC,0,0,SRCCOPY);
                    
    DeleteDC (hMemDC) ;
                    DeleteObject (hBitmap) ;
    =============================
     Mackz(在相互) ( ) 信誉:117  2006-01-25 18:30:00  得分: 0  
     
     
       TransparentBlt
      
     
    前辈啊 我知道您一定知道 但我按您说的做了
    那里有不对吗
      

  2.   

    同意上面说的,csdn里面就有这样的帖子,关于背景透明的问题的