MFC 绘制 PNG 格式图片

来源:互联网 发布:android手机助手源码 编辑:程序博客网 时间:2024/05/16 00:28

//绘制子项图片void CTreeCtrlBT::DrawItemImage(CRect rect, HTREEITEM hItem, CDC *pDc /* = NULL */){if ( NULL == pDc){CClientDC dc(this);pDc = &dc;}CImage img;HRESULT ret = img.Load(_T("C:\\Users\\Administrator\\Desktop\\a123.png"));//此处暂用固定图片HBITMAP hbitmap = img.Detach();CBitmap cBitmap;BITMAP bitmap;cBitmap.Attach(hbitmap);cBitmap.GetBitmap(&bitmap);//pDc->StretchBlt(0,0,800,590,&memdc,0,0,800,590,SRCCOPY);if ( cBitmap.GetSafeHandle() ){CDC tmpdc;tmpdc.CreateCompatibleDC(pDc);CBitmap *pOldBitmap = tmpdc.SelectObject(&cBitmap);int nXOriginDest = 0;int nYOriginDest = 0;int nWidthDest= 0;int hHeightDest  = 0;nXOriginDest = rect.left;// 目标X偏移nYOriginDest = rect.top+(rect.Height()-13)/2;// 目标Y偏移nWidthDest = 13;// 目标宽度hHeightDest  = 13;// 目标高度::TransparentBlt(pDc->m_hDC,nXOriginDest,nYOriginDest,nWidthDest,hHeightDest,tmpdc.m_hDC,0,0,bitmap.bmWidth,bitmap.bmHeight,RGB(255,255,255));//白色作为透明色tmpdc.SelectObject(pOldBitmap);tmpdc.DeleteDC();}}

0 0